使用PHP链接到MySQL数据库中存储的PDF文件

使用PHP链接到MySQL数据库中存储的PDF文件,php,Php,我有一个MySQL数据库,它显示来自web表单的各种用户输入。在另一个页面上,数据库显示给我的员工。我想在数据库中有一个链接,当它被点击时显示上传的PDF文件 我已经研究这个问题两周了,没有一个解决方案对我有效。我搜索过Stack Overflow,以及谷歌搜索中出现的与我的问题相关的多个其他网站。我知道这应该是一个简单的解决办法,但我相信我对这个问题想得太多了 要将文件路径上载到我的数据库中,我使用: <?php $database = "db"; $mysqli =

我有一个MySQL数据库,它显示来自web表单的各种用户输入。在另一个页面上,数据库显示给我的员工。我想在数据库中有一个链接,当它被点击时显示上传的PDF文件

我已经研究这个问题两周了,没有一个解决方案对我有效。我搜索过Stack Overflow,以及谷歌搜索中出现的与我的问题相关的多个其他网站。我知道这应该是一个简单的解决办法,但我相信我对这个问题想得太多了

要将文件路径上载到我的数据库中,我使用:

<?php
    $database = "db";

    $mysqli = new mysqli("localhost", "root", "", $database);
    mysqli->select_db($database);

    $upload = rand(1000,100000)."-".$_FILES['upload']['name'];
    $uploadLocation = $_FILES['upload']['tmp_name'];

    $folder = "uploads/";

    move_uploaded_file($uploadLocation, $folder.$upload);

    $query = "INSERT INTO table (upload) VALUES ('{$uploadLocation}');

    $mysqli->query($query);
    $mysqli->close();
?>
<?php
    $result = mysqli_query($mysqli, "SELECT upload FROM table");

    if ($result) {
        while($row = mysqli_fetch_array($result)) {
            echo '<td><a href="upload.php">' . $row['upload'] . '</a></td>';
        }
    }

    mysqli_free_result($result);
?>
您的错误是:“插入表(上传)值('{$uploadLocation}')

$uploadLocation引用临时名称,正确的方法是存储您创建的新名称:


在表中插入(上传)值(“{$upload}”)

我已经做到了。我在这里想得太多了。我甚至不需要上面的
upload.php
脚本

在数据库本身中,我使用了:

echo '<td><a href="uploads/' . $row['upload'] . '">' . $row['upload'] . '</a></td>';
echo';

您在这个问题上有许多拼写错误。这是您的真实代码吗?我使用了相同的格式,但这不是我的真实代码。我是PHP新手,这是我通过研究类似问题而编写的。@user3783243有什么建议吗?不管我做什么,我总是会犯同样的错误。PDF查看器显示并显示“此PDF文档可能未正确显示”。它根本不显示文件。请使用
error\u log
var\u dump
并查看您使用的实际值。例如,
$file
的输出应该非常清楚问题所在
$filename
也有同样的问题。您的
$query
有语法错误,您应该避免在过程和面向对象之间跳转。这很有帮助,但PDF仍然没有加载。@nseanp尝试更改此行:$file='$文件夹。$upload';至$file=$folder.$upload;它仍然没有加载。PDF查看器显示并显示“此PDF文档可能未正确显示”。但它根本不显示文件。
echo '<td><a href="uploads/' . $row['upload'] . '">' . $row['upload'] . '</a></td>';