在第4次访问之前向用户展示一些内容

时间:2014-08-07 13:49:27

标签: javascript php cookies

我目前有工作代码检查cookie,如果找到,它不会显示一段HTML代码。如果没有找到,它会显示代码,然后将Cookie设置为24小时后过期。这非常简单。我不想详细说明它,现在显示HTML代码块在24小时内的前3次访问。在24小时的第4次访问中,我不想显示该代码。我开始编写javascript来检查3个不同的cookie,这对我来说太过分了。我想知道是否有更简单的方法。这是我今天所拥有的:

<script type="text/javascript">
function getCookie(name) {
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
}
else
{
    begin += 2;
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
    end = dc.length;
    }
}
return unescape(dc.substring(begin + prefix.length, end));
} 
var thecookie='bd3b5cookie';
var myCookie = getCookie(thecookie) ;
if (myCookie == null) {
console.log("not found");
        //add html content here
}
else {    
console.log(" found");
//dont show html code
}
</script>

<script type = "text/javascript">
//set cookie
var now = new Date();
var time = now.getTime();
time += 3600 * 8000;
now.setTime(time);
  document.cookie = 'bd3b5cookie=ok;expires='+now.toGMTString()+';path=/';
//console.log(document.cookie);

</script>

2 个答案:

答案 0 :(得分:0)

您可以在visits表中添加“users”列,并在每次访问/登录时增加其值。然后,使用Cron job,您可以使用Web服务器时间每24小时执行一次UPDATE users SET visits = 0语句。

答案 1 :(得分:0)

每次登录后,您都应该增加用户访问计数器:

if last_visit_date < current_date - session_length

登录柜台和上次访问日期可以在cookies中。

编辑 - 添加了代码块