2017-06-28 64 views
0

我有以下代碼:PHP Cookie的基礎

<?php 
$cookie_name = "offer"; 
$cookie_value = "signup"; 
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); 
?> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 
<body> 
<?php 
if(!isset($_COOKIE[$cookie_name])) { 
echo "Cookie named '" . $cookie_name . "' is not set!"; 
} else { 
echo "Cookie '" . $cookie_name . "' is set!<br>"; 
echo "Value is: " . $_COOKIE[$cookie_name]; 
} 
?> 
</body> 
</html> 

當我在cookie中沒有設置瀏覽器中打開頁面。 當我然後刷新頁面cookie被設置。

爲什麼不在第一頁加載時設置?

謝謝。

+1

「爲什麼不在首頁加載時設置?」 - 因爲瀏覽器沒有發送該cookie到服務器的請求。 – Quentin

回答

1

$_COOKIE包含與請求一起發送的Cookie。由於您以後只會設置cookie(收到請求時),因此$_COOKIE不包含cookie。但是,Cookie設置成功(例如,請使用瀏覽器進行檢查)