例如:
以下為引用的內(nèi)容: $USERID="PHPer"; $CookieTime=0; setcookie("USERID", "$USERID", time()+$CookieTime,"/","itmop.com"); ?> |
你會發(fā)現(xiàn)這個語句執(zhí)行過后,Cookie里什么也沒有,到下一個頁面就顯示沒有$USERID這個COOKIE變量值。
問題分析如下:
首先,設(shè)置瀏覽器進(jìn)程的"Cookie 過期的時間"這個值并不是當(dāng)前Unix時間戳+0,如果設(shè)置為瀏覽器進(jìn)程的話,直接將過期時間設(shè)置為0即可。
其次,不清楚你測試這個頁面時候使用的域名是什么,如果你設(shè)置了"itmop.com"的話,就說明你必須使用"itmop.com"進(jìn)行訪問cookie才會有效,其實(shí)如果 你的域名很多訪問這個頁面的話,那么這個地方可以為空或者訪問這個cookie的域名都是一個域下面的,那么就設(shè)置為".itmop.com",記得前面有"點(diǎn)"
上面的程序如果你這樣寫的話,可能會有效:
以下為引用的內(nèi)容: $USERID="PHPer"; $CookieTime=0; setcookie("USERID", "$USERID", 0,"/",""); echo (isset($_COOKIE['USERID'])? ?? $_COOKIE['USERID']? :? ''); |
第一次打開這個頁面時候是不會有任何輸出的,因?yàn)閏ookie并不會在當(dāng)前頁面即刻生效。
刷新以后會顯示的。