跟踪电子邮件并插入MySQL数据库

时间:2014-10-09 08:50:05

标签: php mysql codeigniter email

我想跟踪使用第三方工具发送的邮件中的电子邮件。代码在 PHP / MySQL 中实现 我用图像跟踪方法来做到这一点。我可以使用下面的代码跟踪IP,主机,日期和时间,但我不知道如何将电子邮件调用到变量中。

请帮我解释一下代码。

以下是代码:

<?php

@ $db = new mysqli('localhost', 'db_username', 'dbpwd', 'mydb');


if (mysqli_connect_errno()) {

//echo 'Error: Could not connect to the database..';

//exit;

}


if (!empty($_SERVER['REMOTE_ADDR'])) {

$ip = $_SERVER['REMOTE_ADDR'];

$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);

$referrer = $_SERVER['HTTP_REFERER'];

$date = date("Y-m-d");

$time = date("H:i:s");
//$email = trim("email");


$sql = "INSERT INTO mydb.emailstats (id,ip,host,referrer,date,time) VALUES (null,'$ip','$host','$referrer','$date','$time');";



$db->query($sql);

}

header( 'Content-type: image/gif' );

echo chr(71).chr(73).chr(70).chr(56).chr(57).chr(97).

chr(1).chr(0).chr(1).chr(0).chr(128).chr(0).

chr(0).chr(0).chr(0).chr(0).chr(0).chr(0).chr(0).

chr(33).chr(249).chr(4).chr(1).chr(0).chr(0).

chr(0).chr(0).chr(44).chr(0).chr(0).chr(0).chr(0).

chr(1).chr(0).chr(1).chr(0).chr(0).chr(2).chr(2).

chr(68).chr(1).chr(0).chr(59);

?>

图像跟踪代码

<img src="ttp://www.pulpandpaper-technology.com/pulppaperadmin/images/logo.gif?id=51&email=!*EMAIL*!" width="0" height="0" border="0" />

&#34;电子邮件&#34;在图像标签中是我想要跟踪的

1 个答案:

答案 0 :(得分:0)

logo.gif应该是一个PHP脚本来做到这一点。您可以通过htaccess中的以下脚本启用它,例如,如果您使用apache作为Web服务器

<Files "/path/to/directory">
  AddType application/x-httpd-php .gif
</Files> 

使用

$_GET['email'] ,  $_GET['id'] 

获取值并在上面插入代码运行。

注意:出于安全原因,许多电子邮件客户端会删除该img标记。此外,许多电子邮件客户端默认禁用图像因此,通过图像跟踪获得的统计数据永远不会100%准确。

相关问题