所以这是我的代码。我丈夫和我都看过它,我们不明白为什么日期和时间不断更新。第一次运行if语句它应该工作,但它应该停止。但事实并非如此。我如何获得停止时间,只是显示而不是更新?
$firstVisitcounter = 0;
$firstVisit = $_COOKIE['firstVisit'];
if ($firstVisitcounter == 0){
$firstVisitcounter = 1;
setcookie('firstVisit', date("d-m-Y H:i:s"), time()+3600);
}
echo $firstVisit;
答案 0 :(得分:2)
$firstVisitcounter = 0;
是第一行,因此if
将始终执行。您可能只想检查cookie:
if(isset($_COOKIE['firstVisit'])) {
$firstVisit = $_COOKIE['firstVisit'];
} else {
$firstVisit = date("d-m-Y H:i:s");
setcookie('firstVisit', $firstVisit, time()+3600);
}
echo $firstVisit;
答案 1 :(得分:0)
// Sets counter to 0
$firstVisitcounter = 0;
$firstVisit = $_COOKIE['firstVisit'];
if ($firstVisitcounter == 0){
// Counter is always 0 (set above)
// so this will always run
$firstVisitcounter = 1;
setcookie('firstVisit', date("d-m-Y H:i:s"), time()+3600);
}
您可能想要做类似
的事情if (empty($_COOKIE['firstVisit'])) {
// First visit...
} else {
// Returning visitor
}
答案 2 :(得分:-2)
每次用户访问该页面时,$firstVisitcounter
将等于0.
尝试做:
if ($_COOKIE['firstVisit']=='') {
setcookie('firstVisit', date("d-m-Y H:i:s"), time()+3600);
}
echo $_COOKIE['firstVisit'];
而不是if ($_COOKIE['firstVisit']=='')
,您可以使用:
(!isset($_COOKIE['firstVisit'])