2012-03-13 8 views
7

मैं अपने द्वारा सेट किए गए पृष्ठ के अलावा किसी भी पृष्ठ से कुकीज़ तक नहीं पहुंच सकता। मैंने विभिन्न पृष्ठों पर print_r($_COOKIE) देखा और पृष्ठों के बीच एकमात्र आम चर $_COOKIE['PHPSESSID'] है।मेरी कुकीज़ केवल उन PHP पृष्ठों पर उपलब्ध हैं जिन्हें वे सेट हैं, क्या यह सामान्य है?

मैं स्थानीय XAMPP परीक्षण सर्वर पर विकास कर रहा हूं। क्या कोई सेटिंग है जो मुझे PHP.ini पर बदलनी चाहिए या कुकीज़ के लिए यह सामान्य व्यवहार है? क्षमा करें, मैं इस सामान के लिए थोड़ा नया हूं और मैं इंप्रेशन कुकीज़ के नीचे था साइट पर व्यापक रूप से सुलभ था।

मैं की तरह कुकी सेट कर रहा हूँ:

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

किसी भी मदद की बहुत सराहना की जाएगी। धन्यवाद

+0

आपको ['$ कुकी-> सेटपैथ ($ पथ)'] मिल सकता है (https://github.com/delight-im/PHP-Cookie/blob/004cde69ec840e65c15275e09b92ecb1da06f357/src/Cookie.php#L104) सहायक, जैसा कि [इस स्टैंडअलोन लाइब्रेरी] में पाया गया है (https://github.com/delight-im/PHP- कुकी)। – caw

उत्तर

11

जड़ तक कुकी पथ सेट करके देखें:

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

यह भी एक ही डोमेन पर है? HTTPS के माध्यम से एक्सेस करने से आपकी कुकीज़ भी प्रभावित हो जाएंगी।

+0

ऐसा लगता है। क्या यह ऐसा कुछ है जो वैश्विक सर्वर सेटिंग पर बदला जा सकता है? मेरा php.ini फ़ाइल session.cookie_path '/' पर सेट है, लेकिन मुझे लगता है कि मुझे अभी भी setcookie() में रूट घोषित करने की आवश्यकता होगी। आपकी मदद के लिए धन्यवाद 1 –

+0

शायद कुछ इस सेटिंग को ओवरराइट कर रहा है। अपनी स्क्रिप्ट के स्थान पर phpinfo() डालने का प्रयास करें और सेटिंग्स की जांच करें :) –

+0

आह, मैंने एपीआई को गलत तरीके से पढ़ा था और पथ के बजाय यहां मेरे डोमेन 'domain.com' का उपयोग कर रहा था। –

संबंधित मुद्दे