记录访问者的信息

平时在开发过程中经常会遇到统计访问网站或者是blog的用户信息,而且要求在某一个时间段内再次访问不要求计数! 比如说我有个blog, 其他用户来访问, 当用户第一次来访问的时候记录数据库,同一天再次访问则不再记录,24小时之后再来访问又将再次记录。

   这种问题的难点主要再于24小时,要判断是否是同一天访问。解决这种问题的方案之一就是用cookies!首先要判断来访者是否来访问过,而且上次访问过的时间和现在时间是否相差24小时, 如果没有访问过或者访问过的时间和现在相差24小时就将访问者的信息插入数据库,再把用户的时间写入cookies。 否则就不用管!

  主要流程就是这样! 那么怎么判断访问者是否来过呢? 我是这样来判断的如果用户来过了我再插入数据库之后把这个用户访问的时间time()写入cookies具体如下: 、

     setcookie($userid, time(), time()+24*3600, '/', $_SERVER['SERVER_NAME']);

$userid是用户在数据库中的id号一般用户登录后存在session里,用他作为cookies的名字因为他是唯一的。

time()是cookies的值。

time()+24×3600 设定 cookie 在一天后失效。

 /  指cookie 就在整个 domain 内有效。

$_SERVER['SERVER_NAME']指该 cookie 有效的域名。

所以程序是这样的:

if(!isset($_COOKIE[$userid]) || time()- $_COOKIE[$userid] > 24*3600) {

   //插入数据库语句

   setcookie($userid, time(), time()+24*3600, '/', $_SERVER['SERVER_NAME']);

}

 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值