我正在做一个项目,我每天都向我的客户发送电子邮件,这些电子邮件包含他们想要访问的页面的详细信息。现在我想做的是,当用户访问这些建议的页面时,他们的详细信息会存储在数据库中。
例如,我已经 www.example.com/test 作为电子邮件发送给我的许多客户,现在当其中一个客户访问页面 www.example.com/test 时,它会获取访问者的详细信息并存储此访问的日志。
No | email | visits | time |
1 |abc@test.com | 1 |20-04-2016 10:00:05 |
2 |xyz@test.com | 3 |20-04-2016 11:00:05 |
您可以从 $_SERVER var 中获取此信息
http://php.net/manual/en/reserved.variables.server.php
$_SERVER['HTTP_REFERER'] - 页面的地址(如果有),其中 将用户代理引用到当前页面
这当然是可能的。
有多种方法可以做到这一点。
- 如果您的用户需要在查看内容之前登录,那么您可以在用户访问内容时登录后立即记录用户的详细信息。
- 如果内容可公开访问,则当您生成要发送给用户的电子邮件时,您可以附加一个 GET 变量来唯一标识您发送给特定用户的 URL。例如,您可以发送
www.example.com/test?ref=xyz
.当用户访问页面测试时,您可以使用一些代码来检查ref
GET变量并将其与您数据库中的值进行匹配,该值将其链接到您将其发送到的用户。当然,如果您的用户相互发送链接,则可能存在误导性信息。这取决于您希望数据的准确性。
但是,由于 Web 对任何拥有 Web 浏览器的人开放,因此最准确的方法是使内容只能通过身份验证访问。
是的,它简单的人跟随我的脚步
步骤1:当邮件发送时,您只需像这样添加您自己的页面链接
<a href="own_page.php?id=<?php echo any unique user id ?>&original_link=<?php echo facebook.com ?>" >click here</a>
步骤2:当用户单击链接时,您的页面导航,以便使用用户唯一ID进行更新,然后将他重定向到原始链接仅此而已。