【问题标题】:click counting per user per link每个用户每个链接的点击计数
【发布时间】:2016-01-02 21:36:40
【问题描述】:

在我的网站上,用户登录成功后,在会员区可以播放讲座。 讲座列表通过mysql数据库获取并显示在页面上以供登录会员使用。

显示的讲座详情包括讲座主题、讲师、讲座日期和讲座录音链接。

当会员点击录音链接时,我想为该特定登录会员添加带有讲座主题的点击记录。

所以我可以在我的管理面板中查看哪个成员查看了哪些讲座..

我怎样才能实现它?

我的想法是 - 我必须使用 onclick 事件来链接录制链接,然后使用成员 ID、成员名称、讲座名称更新 mysql 表。不知道这个想法对不对?并且不知道如何弄清楚..

【问题讨论】:

  • 使用带有 GET href 和条件语句的 WHERE 子句。

标签: php counter


【解决方案1】:

解决您的问题需要两个部分:计数器和检测计数器应递增的方法。

第一部分,计数器,很简单。创建一个包含三列的 SQL 表:用户 ID(用户帐户的外键)、记录 ID(您要计算的任何内容的外键)和计数器(整数)。您可能想要添加上次访问列(时间戳)。然后你需要一个函数来增加计数器。这是一个简单的 INSERT/UPDATE 查询,用于增加计数器列并将当前时间设置为上次访问列(如果需要)。您可能希望查看比 whowhat 更多的参数,例如 where 链接被点击 - 只需添加具有适当外键的附加列(如果您无法确定链接所在的链接实体或页面,则可能需要 URL 表)。

第二部分,点击检测,取决于您的应用程序是如何构建的。 Google 使用 onmousedown 将搜索结果链接更改为重定向到原始 URL 的计数器。因此,当用户将鼠标悬停在链接上时,结果 url 是可见的,但是当单击链接时,它会变为其他内容。另一种但类似的方法是使用 XHR 请求来增加计数器,然后将用户发送到所需的目的地。这两种方法都是关于调用 PHP 脚本来增加计数器并发送重定向作为响应(或者在 XHR 方式的情况下为“ok”)。

第二部分的替代方法是在服务器上完全处理这个问题。如果您有一个向客户端发送记录的 PHP 脚本,只需将增量调用插入脚本中的某处即可。当用户下载记录时,计数器将递增,然后用户收到记录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多