PHP:检查谁阅读了发送的电子邮件?

2023-12-20

我正在向某些用户发送电子邮件,并想知道谁读过它,这意味着如果有人读过该电子邮件,那么将维护一个日志文件,其中包含该用户的电子邮件地址以及日期/时间/IP。 为此,我发送一个带有电子邮件(html 模板)的 javascript 函数,当用户打开该电子邮件时,该函数只会提醒用户的电子邮件地址,如下所示:

for($n=0; $n<sizeof($checkBox); $n++){
        $mail = new PHPMailer();
        $mail->IsHTML(true);
        $mail->Subject = $subject;
        $function = "<script language='javascript'>function stats(emailId){alert(emailId);}</script>";
        $bodyOpen = "<body onload='stats(".$checkBox[$n].");'>"; 
        $msg_body .= $body .= "<table><tr><td>Hello Everyone</td></tr></table></body>";
        $mail->Body = $function.$bodyOpen.$msg_body;
        $mail->WordWrap = 50;
        $mail->FromName = 'Muhammad Sajid';
        $mail->IsMAIL();        
        $mail->From = '[email protected] /cdn-cgi/l/email-protection';
        $mail->AddAddress($checkBox[$n]);
        $sent = $mail->Send();
    }

html 模板工作正常,并在页面加载时显示警报弹出窗口,但如果我用来发送此 html 模板,它就不起作用。

我只想使用 PHP5.x.x / javascript 解决这个问题,没有其他软件或第三方工具。 有什么帮助吗..?


添加标题到电子邮件:

Disposition-Notification-To: [email protected] /cdn-cgi/l/email-protection

如上所述,它不可靠,最好这样做:

<img src="http://yourdomain.com/emailreceipt.php?receipt=<email of receiver>" />

并将其记录在数据库中,尽管这又受到电子邮件客户端显示图像的能力的限制,有时它甚至可能会将邮件放入垃圾箱,因为它没有检测到图像......一种解决方法是实际输出该脚本末尾的图像(说出您的徽标)。

编辑: 快速查找 phpmailer 类给了我以下内容:

$mail->ConfirmReadingTo = '[email protected] /cdn-cgi/l/email-protection';

但与上面的 Disposition-Notification-To 方法相同。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP:检查谁阅读了发送的电子邮件? 的相关文章

  • PHP:在执行 php 脚本时显示“正在加载”页面

    这就是我现在所拥有的 我有一个网页 当访问该网页时 它会通过开放 API 连接到 Surveygizmo com 检索大量数据 然后将这些数据返回给我进行处理 此过程大约需要 10 12 秒 在执行时 页面只是处于 正在加载 状态 并且我会
  • POST 之后在 PHP 中设置 Location 标头时避免 HTTP 302 响应代码

    我需要放一个201 CreatedPOST 请求的响应代码和 Location 标头 但由于某种原因我仍然收到 302 响应 这就是我所拥有的 header HTTP 1 1 201 header Location The new reso
  • 带缓存的简约 PHP 模板引擎,但不带 Smarty?

    有大量的问题 https stackoverflow com search q php template engine cache寻找 正确的 PHP 模板引擎 但它们都不专注于缓存 有谁知道一个轻量级 高质量 基于 PHP 5 的模板引擎
  • 学说 - 获取下一个和上一个记录

    这样我就已经获取了一些记录 我已创建日期字段 现在我想按日期获取下一条和上一条记录 通过以下方式让它工作 qb this gt createQueryBuilder a next qb gt expr gt gt a created dat
  • jQuery 不断 ping 以获得 Ajax 响应

    如何使用 jQuery 不断运行 PHP 脚本并每秒获取响应 并将鼠标上的少量数据发送到同一脚本 我真的需要添加一些随机扩展才能让这样一个简单的计时器工作吗 迭代是人类的 递归是神圣的 L 彼得 多伊奇 http www devtopics
  • PDO 和 MySQL 全文搜索

    我正在将所有站点代码从使用 mysql 函数转换为 PDO 关于 PDO 的 PHP 文档对于我的需求来说并不清楚 它为您提供了可以使用的功能 但没有详细解释它们在不同场景下的情况 基本上 我有一个 mysql 全文搜索 sql SELEC
  • 从 Yii 中的 registerScript 方法强制执行脚本顺序

    我创建了一个小部件 它注册了自己的脚本 如下所示 class MyWidget extends CWidget public function run Yii app gt clientScript gt registerScript CL
  • file_get_contents 获取 php 内容!我需要 html 中的源代码

    我正在尝试使用 file get contents 获取 php 文件的 html 内容 但我无法管理它 无论我做什么 它都需要 php 内容 所以我希望您理解并可以帮助我 脚本的代码
  • 奇怪的 500 内部服务器错误(firebug、php、display_errors、ajax)

    在一页上我正在进行多个 AJAX 调用 所有调用均成功返回响应 但最后一个调用 与其他 ajax 调用无关 返回 500 内部服务器错误作为响应代码 如 firebug 所示 但是 尽管存在错误代码 该 AJAX 调用仍会返回正确的内容 令
  • 使用 PHP 将对象插入 Google Cloud Storage

    说实话 我对缺少使用 PHP 的 Google Cloud Storage 文档感到非常沮丧 我在这里 Stackoverflow 找到的大部分内容都已经过时了 这是我的尝试 postbody array data gt file get
  • 如何在我的查询中使用日期格式?

    这适用于 phpmyadmin 但是当我在代码上使用时给我一个错误 错误说 解析错误 语法错误 意外的 我的语法有什么问题 gt
  • PHP 下载页面

    这些 PHP 下载页面 例如 somesite com download php id somefile 通常如何工作 我最初想到了一个执行计数器操作的页面 然后简单地将用户重定向到文件 URL 这似乎是其他地方给出的唯一答案 但是我不知道
  • 我可以解密通过 PHP 加密的 C++ 数据吗?

    我正在使用 mcrypt encrypt 和 base64 encode 来加密 php 中的数据 我尝试用C 解密数据 但没有成功 我有使用多年的 C Rijndael 逻辑 以及 base64 decode 逻辑 后者完美地解码了 ph
  • 使用 laravel 5 和 Auth 更新登录的用户帐户设置

    截至今天 我对 Laravel 实际上是任何 PHP 框架 还是个新手 但对 PHP 并不陌生 我创建了我的第一个项目并设法使用预构建的登录Auth系统 我创建了一个新的路线 控制器和模型 名为AccountSettings所以当我去 ac
  • 什么会导致 PHP 变量被服务器重写?

    我的公司给了我一个虚拟机来安装网络软件 但我遇到了一个相当奇怪的问题 如果 PHP 变量与特定模式匹配 服务器就会覆盖 重写 它们 什么可以像这样重写 PHP 变量 以下是一个完整的独立脚本
  • 如何反转散列和加盐密码? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 vBulletin 登录使用它来交叉引用数据库 md5 md5 pass salt 我如何制作一个 PHP 脚本 以便每个密码
  • 如何在 Yii 框架中从数据库中获取所有表名和列名

    我正在开发一个模块 我想在其中执行动态相关下拉表和列名称功能 前任 获取所有表名称并将其显示在下拉字段中 选择特定表后 我想在下拉字段中再次显示其所有列名称 问题是 1 如何从数据库中获取所有表名 2 如何从表中获取所有列名 我尝试了一些文
  • PHP字符串比较和相似度索引

    在 PHP 中 有什么优雅的代码可以在两个字符串中查找公共字母而不包含空格 还返回相似性索引 即计算常见字符的数量并返回占字符总数的百分比 假设我有一个字符串 LEGENDARY 而其他字符串为 BARNEY STINSON 所以我需要找到
  • 基于 ajax 的弹出窗口中的 Mathjax + CKEditor 4 + CKEditor

    我已经配置了 CKEditor 4 并且我的页面上有以下内容 我的页面中有一个 CKEditor 设置值的两个选项 这两个选项本身分别选项两个基于 ajax 的弹出窗口 这些基于 ajax 的弹出窗口包含 CKEditor 现在我有以下问题
  • 使用 Ajax 和 PHP 上传图像

    我想将图像上传到我的服务器 并控制 HTML 代码中的 PHP 回显 为此 我想使用 jQuery Ajax 但我不知道如何使用 Ajax 将图像发送到 PHP 这是一个大学项目 所以我不能使用任何类型的插件 我的实际代码 HTML

随机推荐

  • 当按钮大小改变时增加按钮字体大小

    我有一个 Qt 应用程序 其主窗口有五个按垂直顺序排列的按钮 它们都有相同的尺寸 我想做的就是当应用程序全屏显示时增加按钮标签的字体大小 我真的很感激一个不需要太多代码的解决方案 希望这是可以在 Qt Designer 中完成的事情 但我找
  • 将日期和时间转换为 Unix 时间戳

    我像这样显示日期和时间 2009 年 11 月 24 日 17 57 35 我想将它转换为 unix 时间戳 这样我就可以轻松地操作它 我需要使用正则表达式来匹配字符串的每个部分 然后从中计算出 unix 时间戳 我对正则表达式很糟糕 但我
  • 使用 Java 读取 HTML+JavaScript

    我可以通过http读取HTML内容 例如 http www foo com http www foo com 使用 Java 使用 URL 和 BufferedReader 类 然而 其中一些包含 JavaScript 我当前的应用程序无法
  • HTML5 拖放行为

    我广泛使用了 HTML5 原生拖放功能 它几乎完全可以正常运行 只有一个小例外 当任何东西被拖过页面时 我试图突出显示我的拖放区 我最初尝试通过将 jQuery 侦听器放在文档正文上来实现此目的 如下所示 body live dragove
  • 使用 python-can 时出现 AttributeError (模块“can”没有属性“interface”)

    运行以下代码时出现错误 import can importing CAN module import time bus1 can interface Bus bustype vector channel 0 bitrate 500000 a
  • 将字符串保存为html文件android

    我的问题很简单 如何将字符串 HTML 保存为内部存储中的 html 文件 请让我知道如何执行此操作 可以说我有的字符串是 string html This is random text 试试这个 private void saveHtml
  • 检查 GPS 经纬度点是否位于 Google 地图中的道路上

    我正在 Android 中开发一个导航应用程序 我想在用户越野时提示他 那么 如果我有 GPS 纬度 经度点 是否可以确定该点是否位于道路上 是否有 API 支持此类检查 一般而言 这是在所有道路上完成的 而不是在具有指定路径 折线的情况下
  • 应用内购买“准备提交”,但不允许我提交

    我有一些应用程序内购买设置 应用内购买都经过测试 并且运行良好 但我无法提交它们进行审核 我提交了应用程序二进制文件以供审核 然后访问了应用内购买部分 所有应用内购买均显示 准备提交 但 提交审核 按钮呈灰色且不可点击 当苹果审查实际应用程
  • 是否有 JNDI 命名空间约定?

    我已经下载了 JBoss EAP 6 1 我将添加一个新的数据源 我必须将数据源绑定到 JNDI 名称 通过读取示例数据源的 JNDI 名称 它是 java jboss datasources ExampleDS 我看到他们用过dataso
  • PHP 执行时间导致响应延迟[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我故意在我的服务器上运行一个持续长达 60 秒的 php 脚本 每次运行之间都有延迟 问题是 在脚本执行期间发送到服务器的任何其他请求都会
  • CMake:如何在 CMakeLists.txt 中使用 bash 命令

    我想知道如何在 CMakeLists txt 中使用 bash 命令 我想要的是使用以下命令检索处理器的数量 export variable getconf NPROCESSORS ONLN 并使用类似以下内容将 NB PROCESSOR
  • 具有相同对象名称的两个命名空间

    我有两个命名空间 System Numerics 和 UnityEngine 两者都有类型Vector3 所以现在当我想使用它时我必须在它之前声明哪个名称空间 像这样 protected struct CVN public Complex
  • Angular 6 自定义元素在 IE11 和 Firefox 上失败,出现语法和影子 dom 错误

    我创建了一个新的 angular cli 项目 其中使用自定义元素这些方向 https medium com tomsu building web components with angular elements 746cd2a38d5b
  • Java有using语句吗?

    Java有没有可以在hibernate中打开会话时使用的using语句 在 C 中 它类似于 using var session new Session 因此该对象超出范围并自动关闭 Java 7 推出自动资源块管理 http www in
  • 如何在.net core mvc视图中缩小?

    在我用 net core mvc制作的网站上 当我们打开网站并点击页面源代码视图时 如何将第二张图所示的长代码以缩小的形式进行处理 将 Web Markup Min 添加到 ASP NET Core 应用程序 WebMarkupMin是一个
  • 如何从 NSDate 计算年龄

    我正在开发一个应用程序 需要根据某人的生日查找其年龄 我有一个简单的NSDate但我怎么找到这个NSDateFormatter NSInteger ageFromBirthday NSDate birthdate NSDate today
  • 使用类型参数与抽象类型实现类型类

    继从见证抽象类型实现类型类 https stackoverflow com questions 64399785 witness that an abstract type implements a typeclass 64401748 n
  • 在模板函数返回类型上使用 std::enable_if 来利用 SFINAE - 编译错误

    下面的代码 include
  • iPhone:strace、dtruss、dtrace 或同等工具?

    有谁知道是否有类似的东西strace dtruss or dtrace对于iPhone tester iPhone tmp root apt cache search dtruss tester iPhone tmp root apt ca
  • PHP:检查谁阅读了发送的电子邮件?

    我正在向某些用户发送电子邮件 并想知道谁读过它 这意味着如果有人读过该电子邮件 那么将维护一个日志文件 其中包含该用户的电子邮件地址以及日期 时间 IP 为此 我发送一个带有电子邮件 html 模板 的 javascript 函数 当用户打