您可以编写一个脚本,使用PHP创建并返回.gif,.jpeg或.png图像,以便使用
GD library(通常以现代版本PHP分发)进行跟踪。如果您无权访问GD,您可以随时重新编译启用了GD功能的PHP。
例:
pixel.php(为了解释的目的而评论):
// Create an image, 1x1 pixel in size
$im=imagecreate(1,1);
// Set the background colour
$white=imagecolorallocate($im,255,255,255);
// Allocate the background colour
imagesetpixel($im,1,1,$white);
// Set the image type
header("content-type:image/jpg");
// Create a JPEG file from the image
imagejpeg($im);
// Free memory associated with the image
imagedestroy($im);
?>
在一个简单的例子中,您可以使用电子邮件或其他页面中的以下示例URL调用此跟踪:
使用变量:
在您的pixel.php中,您可以简单地解析和解释在图像标签中传递给它的任何$ _GET变量:
if (isset($_GET['a'])) {
// (Do|log) act on a
}
if (isset($_GET['b'])) {
// (Do|log) act on b
}
if (isset($_GET['c'])) {
// (Do|log) act on c
}
您可以根据需要进行应用和重复,但是您可以对所做的工作非常复杂,尤其是通过在$ _GET字符串上设置vars可以访问相当多的关于用户的信息。
一个更适用的例子可能是:
跟踪不止$ _GET变量:
您还可以使用PHP来获取更多信息,例如:
// Server variables
$ip = $_SERVER['REMOTE_ADDR'];
$referer = $_SERVER['HTTP_REFERER'];
$useragent = $_SERVER['HTTP_USER_AGENT'];
$browser = get_browser(null, true);
etc...
然后可能插入数据库中的跟踪表中:
$sql = "INSERT INTO campaign_tracking
('when','campaign','last','ip','useragent')
VALUES
(NOW(),'$campaign','$last','$ip','$useragent')";
这是广泛用于跟踪电子邮件营销活动,特别是PHP中的基本方法,但同样的方法也适用于其他脚本/编程语言和库,也适用于其他目的。
关于GD的更多和有用的信息: