小编近期接手到一个项目,有一个邮件分析模块,主要是判断邮件发送与否,以及邮件是否被用户阅读。
对于这个问题,按常理来说,由于服务器是别人的,无法反馈信息给我们服务器,因此这个我们是无法知道的,那么有没有办法可以解决呢?
答案是肯定的,虽然我们不能得到服务器反馈的信息,但我们可以让用户打开邮件的时候访问我们的服务器,因此就可以知道是否被阅读了。
假设图片链接是这样的:http://www.xxx.com/img.PHP?email=xxx@xx.com 再看看img.PHP的代码
文件img.PHP如下:
<?PHP
$email=$_GET["email"];
if(isset($email))
{
include_once("/conn.PHP");
MysqL_query("update mail_log set read='1' where email='$email'");
}
header("Content/type:image/gif");
$im=imagecreatefromgif("a.jpg");
imagegif($im);
imagedestroy($im);
?>
require_once "./SendMail.PHP";
$Mailer = new SendMail();
$email = "xxx@xx.com";
$Title = "注册";
$file = "http://服务器域名/index/Email/img?email=".$email;
$content = '<div style="background:url('.$file.'); ">注册成功</div>';
if($Mailer->send($email,$Title,$content)) {//发送邮件
echo "发送成功";
}
else{
echo "发送失败";
}
注意:1.当前方法对同一个邮箱发送多个邮件,当打开其中一个,其他的也会被设置为阅读,具体需求,请带上其他参数即刻。
2.个人建议最好给参数进行加密处理以保证数据的安全性。
作者:@(T_T)
地址:[文章来源](https://blog.csdn.net/qq_39298644/article/details/94384350)
欢迎关注,有问题一起学习,本文章如有错误,欢迎评论提出!
以上就是PHP-判断邮件是否被用户打开阅读的详细内容!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。