在用户的计算机上提供图像并保存cookie

时间:2011-10-26 15:04:34

标签: php mysql apache cookies

我知道通过改变apache设置,当他从我的服务器加载图像时,可以在用户的​​机器上植入cookie。

但是,我想知道是否可以在HTML代码中包含一个包含参数的图像,我可以激活一些脚本来记录这些参数,例如:

<img src="http://www.mysite.com/myimage.jpg?somcode=123&customer=abcd" />

作为回报加载图片,我想用somecode=123customer=abcd在用户的计算机上保存一个cookie,并将此信息保存在我的数据库中。

这可能吗?

谢谢,

2 个答案:

答案 0 :(得分:0)

我很确定你能做到这一点,只需让apache将.jpg扩展名视为php文件。

您可以将以下内容添加到特定文件夹中的.htaccess文件中(不要将其放在根目录中,否则会以这种方式处理所有JPG);

AddType application/x-httpd-php .php .jpg

答案 1 :(得分:0)

不使用.jpg作为文件名,只需使用.php即可。然后,您不必乱用服务器配置,正常的图像文件仍然可以正确提供:

<img src="http://www.mysite.com/myimage.php?somcode=123&customer=abcd" />

然后你的myimage.php文件:

<?php
// Your tracking and processing code here
$customer = $_GET['customer'];

// Then, either:
header("Location: /urlpath/to/the/actual/image.jpg"); /* Option 1 */

// OR:
header("Content-Type: image/jpeg");
readfile("/filepath/to/the/actual/image.jpg"); /* Option 2 */

我更喜欢选项1,因为它允许您的Web服务器非常有效地提供实际图像而不是PHP(选项2)。

相关问题