【问题标题】:Best way to track user activity from email to download从电子邮件到下载跟踪用户活动的最佳方式
【发布时间】:2015-01-19 20:21:58
【问题描述】:

我需要从电子邮件活动开始跟踪用户活动,如下例所示:

我有页面 X 和 Y,其中有一些可以下载的文件,我们称它们为 FileA 和 FileB。

  • User1 点击链接,访问 PageX 并下载 FileA
  • User2 点击链接,访问 PageX 并下载 FileB
  • User1 然后点击 PageY(另一个页面)并下载 FileC
  • User2 也转到 pageY,但没有下载任何内容。

我需要一份显示以下内容的报告: 用户 1: 访问过的页面:第 X 页、第 Y 页 下载的文件:FileA、FileC

用户 2 访问过的页面:第 X 页、第 Y 页 下载的文件:FileB

实现这一结果的最佳工具是什么? 来自电子邮件的链接点击很明显,任何新闻通讯软件都可以实现这一点,但我该如何处理下载? 谢谢。

【问题讨论】:

    标签: analytics tracking newsletter


    【解决方案1】:

    这需要很多页面和技术,但首先:

    1. 电子邮件中的所有链接都必须带有 id,如果您想拥有用户数据库或使用 BASE64 编码和解码用户信息,MD5 是很好的选择

    2. 一旦用户点击链接,从电子邮件或任何地方,跟踪他/她进入点击页面。

    3. 为该用户创建会话以记录活动。

    4. 将用户重定向到您想要的页面。

    5. 使用覆盖标头信息的文件来操作您的文件。

    6. 记录哪个用户想从你的会话中下载它,然后允许下载文件。

    7. 根据您记录的数据为您的用户生成报告。

    ** 现在取决于您要实现这些概念的语言。

    ** 可能需要额外的步骤。

    【讨论】:

      【解决方案2】:

      为什么不为此目的使用数据库?您可以定义以下表格:

      pages(id, name, url)
      users(id, name, username, password, email)
      event_types(id, name)
      events(id, page_id, user_id, event_type_id, issued, additional)
      

      您将XY 存储在页面中。您将用户存储在users 中。您在event_types存储访问和下载。您将实际事件存储在events,知道user_idpage_idevent_type_id,并将事件日期存储在issued,并将其他数据(如下载的文件)存储在additional

      接下来,您应该编写代码来存储用户访问页面或下载文件时的实际事件。您查询表以收集信息。另外,请注意SQL injectionXSS attack

      【讨论】:

      • 如果他只想使用用户id,将id转换为(int)可以防止注入。
      • 是的,但他将来可能会想要更复杂的东西,比如存储一些额外的东西,由用户提供。例如,如果他想跟踪用户名更改的配置文件编辑(这不是当前问题的一部分),另外存储旧用户名和新用户名,那么 SQL 注入将成为危险。最好在规划功能时尽早预防这些问题。
      • 确实如此。大部分都可以由 MYSQLi 完成,他还需要小心 XSS。 :)
      • 是的,这一点也很重要。操作。需要保护项目免受 XSS 攻击,例如
      猜你喜欢
      • 2011-02-26
      • 1970-01-01
      • 2011-12-30
      • 2017-08-12
      • 2017-07-05
      • 1970-01-01
      • 1970-01-01
      • 2020-11-28
      • 1970-01-01
      相关资源
      最近更新 更多