每个用户和每封邮件的电子邮件的像素跟踪

时间:2013-05-03 07:51:07

标签: php

我想通过pixle跟踪跟踪电子邮件,每个用户在我的数据库中都有一个id,我需要知道谁准确地打开了消息和哪个消息而不只是获得一般的开放率。

我的问题是,我需要为每个消息和每个用户创建一个具有不同名称的pixle图像吗?

2 个答案:

答案 0 :(得分:2)

我认为你可以这样做:

 <img src="www.yourdomain.com/track.php?userid=xxx&msgid=yyy">

然后只需使用$ _GET参数来跟踪用户/消息,并重定向到静态图像,这对所有消息和用户都是相同的。

答案 1 :(得分:2)

您可以为所有电子邮件使用相同的图片,但使用不同的路径,这些路径可以解决所有相同的问题。

因此,图像可以是example.com/bla/index.php?msg=1&img=white.jpg,然后执行以下操作:

<?php
// Here goes some more PHP ($DB initialization, etc)

if (!empty($_GET['img']) && !empty($_GET['msg']))
  $STH = $DB->prepare('INSERT INTO seen (`message`) VALUES (?)');
  $STH->execute(array($_GET['msg']));
header('Location: /images/white.jpg');
?>

我最近使用了一些非常相似的ajax,尽管使用.htaccess和example.com/faces/89y3gf34gho.jpg之类的路径(内部转换为example.com/faces/index.php?face=89y3gf34gho.jpg

请注意,许多用户会认为小型跟踪白图像具有攻击性,所以,至少你会创建一个像imtrackingyou.com/track/index.php?msg=36&img=white.jpg这样的专用网站,隐藏这不是图像,而且可能需要做什么。出于这些目的,example.com/bla/5475.jpg优于example.com/bla/index.php?msg=1&img=white.jpg。这可以通过Apache's mod_rewrite实现。