我的问题很简单:如何计算访问者访问我网站的连续天数(php),欢迎任何想法。
答案 0 :(得分:6)
简单:
只是有一些登录概念或持久性cookie(登录更可靠,因为他们可以清除cookie)。然后在您的数据库中有一个“上次登录”字段。如果上次登录的字段与昨天的日期匹配,则递增您的连续访问次数,否则重置它。
编辑:这可能是显而易见的,但请确保在今天检查后更新“上次登录”字段,否则每次加载页面时都会增加计数!
编辑:一个快速示例可能看起来像这样(伪代码):
// first you need to set $last seen from the DB..
// first you need to set consecutive from the DB too..
// once you have, you can do something like this.
if(strtotime('-1 day', date('Y-m-d')) == $last_seen) {
$consecutive = $consecutive + 1;
mysql_query(sprintf('UPDATE user SET last_seen=NOW(),consecutive=%d WHERE id=%d', $consecutive + 1, $id));
} else if(date('Y-m-d') == $last_seen) {
// ok, they logged in today again, do nothing.
} else {
$consecutive = 0; // only really needed if you plan on displaying it to the user
// later in this script
mysql_query(sprintf('UPDATE user SET last_seen=NOW(),consecutive=0 WHERE id=%d',$id));
}
答案 1 :(得分:1)
饼干
if(isset($_COOKIE["identifier"])){
// log as existing user
}else{
setcookie('identifier', $id_value, ...
}
如果人们清除饼干,它就无法工作,这就是他们清除饼干的原因。
答案 2 :(得分:1)
您可以使用可插拔的流量分析工具,不论是商业用途,还是Google Analytics等。