例如:
以下為引用的內容:
<?php
$USERID="PHPer";
$CookieTime=0;
setcookie("USERID", "$USERID", time()+$CookieTime,"/","pcpchina.com");
?>
你會發現這個語句執行過後,Cookie裡什麼都沒有,到下一個頁面就顯示沒有$USERID這個COOKIE變數值。
問題分析如下:
首先,設定瀏覽器進程的「Cookie 過期的時間」這個值並不是目前Unix時間戳記+0,如果設定為瀏覽器進程的話,直接將過期時間設為0即可。
其次,不清楚你測試這個頁面時候使用的網域是什麼,如果你設定了「pcpchina.com」的話,就說明你必須使用「pcpchina.com」進行訪問cookie才會有效,其實如果你的網域很多訪問這個頁面的話,那麼這個地方可以為空或訪問這個cookie的網域都是一個網域下面的,那麼就設定為“.pcpchina.com”,記得前面有“點”
上面的程式如果你這樣寫的話,可能會有效:
以下為引用的內容:
<?php
$USERID="PHPer";
$CookieTime=0;
setcookie("USERID","$USERID",0,"/","");
echo(isset($_COOKIE['USERID'])?$_COOKIE['USERID']:'');
?>
第一次開啟這個頁面時候是不會有任何輸出的,因為cookie並不會在目前頁面即刻生效。
刷新以後會顯示的。