我的下载脚本有问题..所以我制作了一个上传脚本 - >它将文件添加到名为Uploads的文件夹中,并将id,filename和link插入数据库。但是我找不到下载上传文件的方法。这是我的下载脚本:
<?php
include('config.php');
$dwquery = mysqli_query($db, "SELECT id, filename FROM files");
$id = intval($_GET['id']);
while ($row = mysqli_fetch_array($dwquery)) {
echo '<a href="download.php?id='.$row['id'].'">'.$row['filename'].'</a><br />';
}
$download = mysqli_query($db, "SELECT link FROM files WHERE id=$id");
$link = mysqli_fetch_array($download);
if($id != '') {
header('Content-disposition: attachment; filename='.$link[0]);
readfile($_SERVER['DOCUMENT_ROOT'] . '/project/' .$link[0]);
}
?>
当我选择下载哪个文件时,只需下载页面的源代码而不是实际文件。
编辑:它实际上下载了download.php的源代码+我要下载的文件中的文本/代码。所以它得到了回声:
echo '<a href="index.php"> Index </a> / <a href="upload.php"> Upload </a> / <a href="download.php"> Download </a> / <a href="logout.php"> Logout </a><br />';
下载的文件是:
<a href="index.php"> Index </a> / <a href="upload.php"> Upload </a> /
<a href="download.php"> Download </a> / <a href="logout.php"> Logout
</a><br /><a href="download.php?id=6">test1.php</a><br /><a
href="download.php?id=5">test2.txt</a><br />
and here's the actual code of the file
答案 0 :(得分:0)
您的代码如下所示:
Show list of files
IF a download id is provided:
Show the content of that file
它应该是这样的:
IF a download id is provided
Show the content of that file
ELSE
Show list of files
由于您没有检查文件是否存在错误,因此您可能也错误地获取了文件的路径。