2017-01-26 8 views
2

これは私のコードです。私の夫と私はそれを見ていて、なぜ日時が更新されているのか理解できません。 if文が最初に実行されるときには動作するはずですが、if文は停止する必要があります。しかし、それはしません。更新するのではなく、停止する時間をどうやって表示するのですか?setcookieは更新を続けます。

$firstVisitcounter = 0; 
$firstVisit = $_COOKIE['firstVisit']; 
if ($firstVisitcounter == 0){ 
    $firstVisitcounter = 1; 
setcookie('firstVisit', date("d-m-Y H:i:s"), time()+3600); 
} 

echo $firstVisit; 

答えて

1

$firstVisitcounter = 0;のような何かをしたいです。 ($の_COOKIEの[」場合

を:ユーザアクセスページの$ firstVisitcounterは0

に等しくなります毎回がやってみているため

if(isset($_COOKIE['firstVisit'])) { 
    $firstVisit = $_COOKIE['firstVisit']; 
} else { 
    $firstVisit = date("d-m-Y H:i:s"); 
    setcookie('firstVisit', $firstVisit, time()+3600); 
} 

echo $firstVisit; 
+0

おかげこれは、それが動作しました!私たちはかなり長い間それを見ていた。 – Sofelia

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は必ず実行されます

if (empty($_COOKIE['firstVisit'])) { 
    // First visit... 
} else { 
    // Returning visitor 
} 
-2

を:あなただけのクッキーをチェックしたい場合があります{firstVisit '} =='){

setcookie( 'firstVisit'、date( "dmY H:i:s")、time()+ 3600);

}

エコーの$ _COOKIE [ 'firstVisit']。

その後編集: の代わりに、IF($ _COOKIE [ 'firstVisit'] == '')あなたが使用することができます!(ISSET($ _ COOKIE![ 'firstVisit'])

関連する問題