如何建立链接以在浏览器上下载服务器文件?

时间:2019-08-31 10:56:39

标签: javascript php jquery html pdf

我正在尝试创建一个简单的下载链接

我要下载的文件是用户可以上传的.pdf,现在我希望可以下载。使用弹出框,您就知道了,或者只是在chrome下载栏上

我已经尝试了每个答案的答案:

<a href="<?=$GUIDELINES_PDF_DIR . $projectId . '.pdf'?>" download="guidelines.pdf">Download PDF</a>

但这会导致“失败-没有文件”,即使我进行检查

 if(file_exists($GUIDELINES_PDF_DIR . $projectId . '.pdf'))

它返回true!

其他一些注意事项:

  • 我对服务器方面的工作感到很不安,所以也许同一链接在PHP和HTML上不起作用?在这种情况下,如何找到文件?

  • 此链接位于<form>中,因此,我真的不想在其中创建另一个<form>,也不想做任何破坏用户输入信息的事情

非常感谢:)

2 个答案:

答案 0 :(得分:1)

$GUIDELINES_PDF_DIR是服务器硬盘上的目录。

您创建的结果路径是相对于服务器硬盘的根目录,而不是Web服务器的DocumentRoot。

生成URL时,您需要考虑这种差异。

答案 1 :(得分:0)

使用正确的标题:

header("Content-type:application/pdf");
header("Content-Disposition:attachment;filename='downloaded.pdf'");
相关问题