我在php中有一个文件下载功能,可以调用下载文件,但是浏览器弹出窗口阻止程序阻止了该文件的打开。
目标是要有一个html表单提交按钮,该按钮提交一个表单,根据表单输入在服务器上编辑rtf文件,然后将新文件下载给用户。
因为在用户单击下载之后,并且在下载文件之前,我需要php运行一些代码,所以我无法以其他任何方式使它工作。我必须使php回显一个链接,然后单击一些可单击该链接的js代码。
下载功能:
1
5040
4445280000
download.php:
function download($path, $name){
if(!file_exists($path)){
echo $path." does not exist.";
}
else{
echo "
<a href='download.php?path={$path}&name={$name}' id='download'
target='download_frame' style='display:none;'>Download File</a>
<script>document.getElementById('download').click();</script>
";
}
}
答案 0 :(得分:1)
您可以用echo代替JavaScript并使用标头:
header ('location: download.php?path='. $path .'&name='. $name);
这将重定向到同一页面中的download.php并建议下载文件。