用于唯一配置文件视图的计数器


Counter for unique profile views

所以我试图使独特的配置文件视图,我想到创建2表在MySQL:

  • pages (id, profile_id, user_id, date)
  • profile_views (id, profile_id, user_id, count)

因此,当用户转到配置文件时,它将用user_id插入一条新记录到profile_vies并增加计数器。它还将在pages表中插入一条记录,其中包含我的数据。

如果在24小时内没有记录我的ID和profile_id在pages表中设置,则增量将开始,因为每24小时所有查询<24小时将被删除,因此将进行新的计数。

我想听听你对侧面视图理论的看法…不使用存储ip的文本文件,或者如果你能告诉我如何实现这一目标的任何更好的想法。

逻辑看起来不错。当用户访问配置文件时,将该id的计数添加到表中,并保存日期时间。

如果用户在24小时内再次访问配置文件,请查找当前日期时间与您已经保存在数据库中的日期时间之间的差异。如果超过24小时/一天,则不增加计数。

<?php
    //Include your database here.
    $ID = mysql_real_escape_string(strip_tags(stripslashes($_GET['ID'])));

    $getUser = mysql_query("SELECT * FROM Members WHERE ID='".$ID."'");
    $gU = mysql_fetch_object($getUser);

    if ($myU->ID != $ID) {
        if ($User) {
            mysql_query("UPDATE Members SET ProfileViews=ProfileViews + 1 WHERE ID='".$ID."'");
        }
    }
    echo "".$gU->ProfileViews."";
?>