Javascript 如何在浏览器上创建下载服务器文件的链接?
我正在尝试创建一个简单的下载链接 我想下载的文件是用户可以上传的Javascript 如何在浏览器上创建下载服务器文件的链接?,javascript,php,jquery,html,pdf,Javascript,Php,Jquery,Html,Pdf,我正在尝试创建一个简单的下载链接 我想下载的文件是用户可以上传的.pdf,现在我想让下载成为可能。使用弹出框,你知道,或者只是在chrome下载栏上 我试过每个答案所说的: <a href="<?=$GUIDELINES_PDF_DIR . $projectId . '.pdf'?>" download="guidelines.pdf">Download PDF</a> 这是真的 其他一些注意事项: 我对服务器的东西很不了解,所以可能相同的链接在PHP和H
.pdf
,现在我想让下载成为可能。使用弹出框,你知道,或者只是在chrome下载栏上
我试过每个答案所说的:
<a href="<?=$GUIDELINES_PDF_DIR . $projectId . '.pdf'?>" download="guidelines.pdf">Download PDF</a>
这是真的
其他一些注意事项:
- 我对服务器的东西很不了解,所以可能相同的链接在PHP和HTML上都不起作用?那样的话,我怎么才能找到文件呢
- 此链接位于
中,因此我不想在其中创建另一个
,也不想做任何损害用户输入信息的事情
header("Content-type:application/pdf");
header("Content-Disposition:attachment;filename='downloaded.pdf'");
$GUIDELINES\u PDF\u DIR
是服务器硬盘上的目录
您创建的结果路径是相对于服务器硬盘的根目录,而不是相对于web服务器的DocumentRoot
在生成URL时,您需要考虑这种差异。是服务器中的路径还是可以通过web访问的路径?
$GUIDELINES\u PDF\u DIR
如果导航到https://host/path/to/pdf/guidelines.pdf
?另外,$GUIDELINES\u PDF\u DIR
是绝对路径还是相对路径?@frz3993我刚刚检查过,似乎无法访问。如果我把它放在浏览器上,它“找不到”@JimNilsson哦,我想它是相对的!它不包含服务器位置,并且以“/”开头。如果我把它放在浏览器上,它会说找不到:/我有点困惑。。。链接如何与此交互?如果用户点击下载pdf,我应该如何调用此代码?如果找不到该文件,这将没有帮助。URL直接指向pdf文件,因此您不能只向其添加PHP代码。Omg。。。经过这么长时间的观察,在阅读了你的答案之后,一切都变得有意义了!非常感谢,链接现在可以工作了:D
header("Content-type:application/pdf");
header("Content-Disposition:attachment;filename='downloaded.pdf'");