2012-03-13 16 views
7

Çerezlere, ayarlandıkları sayfanın dışındaki herhangi bir sayfadan erişemiyorum. Farklı sayfalarda print_r($_COOKIE)'a baktım ve sayfalar arasındaki tek ortak değişken $_COOKIE['PHPSESSID'].Çerezlerim sadece ayarlandıkları PHP sayfalarında bulunur, bu normal midir?

Yerel bir XAMPP test sunucusunda geliştiriyorum. PHP.ini üzerinde değiştirmem gereken bir ayar var mı yoksa çerezler için bu normal davranış mı? Üzgünüz, bu şeyler için biraz yeni ve izlenim çerezleri altında site çapında erişilebilir oldu.

ben gibi çerezleri kuruyorum:

setcookie("user", "Dave Schmave", time()+60*60*24*120); 

Herhangi bir yardım büyük takdir. Teşekkür

+0

['$ cookie-> setPath ($ yol)'] (https://github.com/delight-im/PHP-Cookie/blob/004cde69ec840e65c15275e09b92ecb1da06f357/src/Cookie.php#L104) yardımcı olabilir, [bu bağımsız kütüphane] 'de olduğu gibi (https://github.com/delight-im/PHP-Cookie). – caw

cevap

11

köküne çerez yolu ayarlamayı deneyin: Ayrıca aynı etki alanında

setcookie("user", "Dave Schmave", time()+60*60*24*120, '/'); 

mı? HTTPS ile erişim çerezlerinizi de etkileyecektir.

+0

Böyle görünüyor. Bu, genel bir sunucu ayarında değiştirilebilecek bir şey midir? Php.ini dosyamda session.cookie_path '/' olarak ayarlandı fakat sanırım hala root'u setcookie() içinde bildirmem gerekecek. Yardımınız için teşekkürler1 –

+0

belki bu ayarın üzerine bir şey yazıyor. Komut dosyanızın yerine bir phpinfo() yerleştirmeyi deneyin ve ayarları kontrol edin :) –

+0

Ah, API'yi yanlış okumuş ve yol adı yerine 'domain.com' alanımı kullanıyordum. –

İlgili konular