PHP下载脚本。下载脚本和列表脚本是否应该在单独的文件中?
这是我在这里的第一篇文章。尝试使用搜索,但找不到类似的讨论(我知道有很多例子如何做到这一点,但没有一个解释你是否应该使用一个或两个文件以及为什么这样做) 我有一个download.php文件,其中列出了可下载的文件。下载链接链接到同一个页面,带有_获取实际下载的参数 在任何实际输出之前,将下载文件的头放在同一.php页面的顶部是否安全?或者我应该使用不同的.php文件进行实际下载,并列出可下载的文件 它工作得很好,但是我以后会遇到这种代码的问题吗 我这样做的原因是为了避免将ppl从列表中重定向。现在,您只需单击所需文件,即可立即开始下载,同时保持在同一页面中(下载多个文件更容易/更快) 我现在只做了几个月的专业程序员,我想学习正确的/好的方法。。。不仅是目前的工作方式 页面来源如下(简而言之):PHP下载脚本。下载脚本和列表脚本是否应该在单独的文件中?,php,download,Php,Download,这是我在这里的第一篇文章。尝试使用搜索,但找不到类似的讨论(我知道有很多例子如何做到这一点,但没有一个解释你是否应该使用一个或两个文件以及为什么这样做) 我有一个download.php文件,其中列出了可下载的文件。下载链接链接到同一个页面,带有_获取实际下载的参数 在任何实际输出之前,将下载文件的头放在同一.php页面的顶部是否安全?或者我应该使用不同的.php文件进行实际下载,并列出可下载的文件 它工作得很好,但是我以后会遇到这种代码的问题吗 我这样做的原因是为了避免将ppl从列表中重定向。
只需在读入文件($file\u url)之后添加die()或exit()或将html放在else语句中,就不会有问题:)这个问题似乎离题了,因为它是关于CodeReview的(也许在那里发布这个问题更合适)。
<?php
CheckForLogin();
// download script for the actual download
if(isset($_GET['id']) {
$temp_path = GetPathFromDatabase($_GET['id']);
header('Content-Type: application/pdf');
header("Content-Transfer-Encoding: Binary");
header("Content-disposition: attachment; filename=$temp_path");
readfile($file_url);
}
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
...
// download link
<a href="download.php?id=xxx">Download</a>
...
</body>
?>