我有一个用PHP开始下载的脚本。当用户单击开始下载的链接时,它应该提示用户是否要保存文件。它在firefox中工作正常,但在Safari和Chrome中,下载会自动开始,而不会提示用户。
这是我的代码
$extension = fileexten($filename);
if(($filename!= false)&&($fakename!=false&& @fopen($filename,'r')==true)){
$mime = contenttype($extension);
set_time_limit(0);
header('Pragma: public');
header('Expires: 0');
header("Content-Type:".$mime);
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: private', false);
header('Content-Disposition: attachment;filename='.$fakename.'.'.$extension);
header("Content-Transfer-Encoding: binary");
if (ob_get_length() > 0) {
ob_end_clean();
}
flush();
readfile($filename);
}
else{
$error = "<h3>We could not find this file</h3>";} // If the filename or fake filename could not be retrieved.
}
无论如何,我可以确保浏览器提示他们保存或下载文件,而不是在其他浏览器中自动启动?
答案 0 :(得分:2)
它与脚本无关,而与浏览器设置无关。
对于谷歌浏览器,您可以更改它: