我正在尝试找到一种方法来找出谁正在从图片库下载什么图像。用户可以使用缩略图旁边的按钮进行下载,或者右键单击并使用“链接另存为”。可以使用PHP或JavaScript从所有浏览器中将用户会话或ID关联到“链接另存为”操作。
发布于 2008-09-16 09:19:43
是的,我更喜欢通过PHP来做这件事。您必须设置一个脚本,该脚本将加载文件并将其发送到用户浏览器。此脚本还可以将下载记录到某个位置(例如,您的数据库)。
例如,在非常粗糙的伪代码中:
download.php
$file = $_GET['file'];
updateFileCount($file);
header('Content-Type: image/jpeg');
sendFile($file);然后,您只需将下载链接指向download.php而不是实际的文件。(请注意,当然,updateFileCount和sendFile是您必须提供的函数- this script是您可以使用的下载脚本的示例)
注意:我强烈建议避免使用$_ get‘’file‘来获取整个文件名-恶意用户可以使用它从您的web服务器检索敏感文件。但是PHP下载的安全使用是另一个问题的主题。
发布于 2008-09-16 09:14:32
您需要一个网关脚本,比如ImageDownload.php?picture=me.jpg,或者类似的东西。
该页面将返回图像字节,并记录图像已下载。
发布于 2008-09-16 09:15:20
因为保存的图像在本地计算机上,所以没有办法获得这种信息,因为他们已经从您的系统中检索到了图像。即使是使用javascript,我知道你能做的最好的事情就是每次用户按下第二个鼠标按钮时,使用一些ajax的东西来记录。
我真的不喜欢这个想法,但如果你想在每次有人下载图片时都记录下来,你可以将图片放在flash或java应用程序中,这样就需要点击下载图片按钮。只有这样,他们才能在不这样做的情况下获得图像,要么在数据包进入他们身边时捕获数据包,要么截取屏幕截图。
https://stackoverflow.com/questions/70600
复制相似问题