सबसे पहले, इन सामान्य जांचों को करें:
- सुनिश्चित करें कि
session_start();
किसी सत्र को बुलाए जाने से पहले बुलाया जाता है। तो एक सुरक्षित शर्त यह होगी कि इसे अपने पेज की शुरुआत में रखा जाए, इसके तुरंत बाद <?php
कुछ भी करने से पहले घोषणा की जाए। यह भी सुनिश्चित करें कि उद्घाटन की <?php
घोषणा से पहले कोई व्हाट्सएप / टैब नहीं है ।
header
रीडायरेक्ट के बाद , वर्तमान स्क्रिप्ट का उपयोग करके समाप्त करें exit();
(अन्य ने भी सुझाव दिया है session_write_close();
और session_regenerate_id(true)
, आप उन लोगों को भी आज़मा सकते हैं, लेकिन मैं उपयोग करूँगा exit();
)
- सुनिश्चित करें कि जिस ब्राउज़र का आप उपयोग कर रहे हैं, उस पर कुकीज़ को सक्षम किया गया है।
- सुनिश्चित करें
register_globals
कि यह बंद है, आप इसे php.ini
फ़ाइल पर और उपयोग करके भी देख सकते हैं phpinfo()
। का संदर्भ लें इस इसे बंद करने के लिए के रूप में।
- सुनिश्चित करें कि आपने सत्र नहीं हटाया या खाली नहीं किया
- सुनिश्चित करें कि आपके
$_SESSION
सुपरग्लोबल सरणी में कुंजी कहीं भी अधिलेखित नहीं है
- सुनिश्चित करें कि आप उसी डोमेन पर रीडायरेक्ट करते हैं। इसलिए सत्र को आगे ले जाने के
www.yourdomain.com
लिए ए से पुनर्निर्देशन yourdomain.com
नहीं होता है।
- सुनिश्चित करें कि आपकी फ़ाइल एक्सटेंशन है
.php
(ऐसा होता है!)
अब, ये सबसे आम गलतियाँ हैं, लेकिन अगर उन्होंने इस चाल को नहीं किया, तो समस्या आपकी होस्टिंग कंपनी के साथ होने की संभावना है। यदि सब कुछ localhost
आपके दूरस्थ / परीक्षण सर्वर पर नहीं बल्कि काम करता है, तो यह सबसे अधिक संभावना है। इसलिए अपने होस्टिंग प्रदाता के ज्ञानकोष की जांच करें (उनके फ़ोरम आदि को भी आज़माएं)। FatCow और iPage जैसी कंपनियों के लिए, उन्हें आपको निर्दिष्ट करने की आवश्यकता होती है session_save_path
। तो इस तरह से:
session_save_path('"your home directory path"/cgi-bin/tmp');
session_start();
("होम डायरेक्टरी पाथ" को अपने वास्तविक होम डाइरेक्टरी पथ से बदलें। यह आमतौर पर आपके कंट्रोल पैनल (या समतुल्य) के भीतर होता है, लेकिन आप test.php
अपनी रूट डायरेक्टरी और टाइप पर एक फाइल भी बना सकते हैं :
<?php echo $_SERVER['SCRIPT_FILENAME']; ?>
'Test.php' से थोड़ा पहले आपका घर निर्देशिका पथ है। और हां, सुनिश्चित करें कि फ़ोल्डर वास्तव में आपके रूट डायरेक्टरी के भीतर मौजूद है। (कुछ प्रोग्राम सिंक्रनाइज़ करते समय खाली फ़ोल्डर अपलोड नहीं करते हैं)