【发布时间】:2011-08-04 16:09:00
【问题描述】:
有没有一种方法可以在您单击图像后将其下载(无需右键单击将图像另存为)?
我正在使用一个小的 Javascript 函数来调用下载页面:
<a href="#"
onclick="window.open('download.php?file=test.jpg', 'download', 'status=0');"
>Click to download</a>
在 download.php 页面我有类似的东西:
$file = $_GET['file'];
header('Content-Description: File Transfer');
header("Content-type: image/jpg");
header("Content-disposition: attachment; filename= ".$file."");
readfile($file);
但它不起作用。我做错了什么?
提前致谢!
【问题讨论】:
-
请注意,使用此代码,任何人都可以从您的服务器下载任何可能的文件:只需在 URL 中指定任何文件的路径,瞧,您会得到它的内容...
-
@Pascal;别担心,它是安全的,这只是代码的一小部分
-
您的 download.php 中可能存在 PHP 错误,但在上面的代码中是正确的并且可以正常工作。我已经测试过:) 你可以通过在 header 之前写 exit 来测试。
标签: php javascript