2010-01-29 90 views
2

我無法使用$ _COOKIE ['mycookie']讀取cookie。我在Linux上使用PHP-Apache。有沒有在php.ini或httpd.conf中激活cookie。無法在php中讀取cookie

謝謝

+0

如果您使用的是適當的舊版本的PHP,您可以嘗試使用$ HTTP_COOKIE_VARS,但它的最l可能是你的variable_order設置。 – robbo 2010-01-29 04:59:18

回答

7

您是否正確設置了Cookie?

<?php 
$value = 'something from somewhere'; 

setcookie("TestCookie", $value); 
setcookie("TestCookie", $value, time()+3600); /* expire in 1 hour */ 
setcookie("TestCookie", $value, time()+3600, "/~rasmus/", ".example.com", 1); 
?> 
<?php 
// Print an individual cookie 
echo $_COOKIE["TestCookie"]; 
echo $HTTP_COOKIE_VARS["TestCookie"]; 

// Another way to debug/test is to view all cookies 
print_r($_COOKIE); 
?> 
+0

謝謝。是的,cookie設置正確。 – kobra 2010-01-29 04:40:53

0

http://php.net/manual/en/ini.core.php

檢查在php.ini您gpc_order設置,確保Cookie不會被覆蓋。

+0

謝謝。目前的訂單是「EGPCS」。是對的嗎? – kobra 2010-01-29 05:02:46

+0

默認實際上是根據網站的「GPC」。 – 2010-01-29 05:06:56

0

這個前提假設瀏覽器在您期望的時候返回cookie。有MSIE(iehttpheaders)和Firefox(篡改數據,網頁開發工具欄等等)的工具,可以讓你看到實際發送/接收的HTTP頭。或者,您可以使用wireshark等竊聽工具。

C.

4

雖然我還沒有發現這方面的任何具體文件,似乎餅乾只能從目錄,子目錄,從文件,其中寫

所以,如果你

/var/www/html/mySystem/action/writeCookie.php 

寫一個cookie,你將無法從

/var/www/html/mySystem/view/readCookie.php 

閱讀它作爲一個解決方案,我把在頂級目錄中的所有我的cookie寫入文件,一些如:

/var/www/html/mySystem/writeCookie.php