2010-08-16 16 views
5

के लिए संदेश प्रदर्शित करें मैं केवल प्रथम पृष्ठ लोड के लिए टिप्पणी जोड़ने के बाद आपको धन्यवाद संदेश प्रदर्शित करना चाहता हूं ... टिप्पणी फ़ॉर्म को बाहरी PHP फ़ाइल का उपयोग करके संसाधित किया जाता है और पृष्ठ पर रीडायरेक्ट करने की बजाय। मैं केवल पुनर्निर्देशन के बाद कुछ संदेश प्रदर्शित करना चाहता हूं ... php का उपयोग करके ऐसा करने का सबसे अच्छा तरीका क्या होगा?केवल प्रथम पृष्ठ लोड

उत्तर

5

प्रदर्शित मान लिया जाये कि आप बाहरी php फ़ाइल है कि फाइल आप प्रसंस्करण फ़ाइल पर निम्नलिखित के समान कुछ कर सकते हैं प्रक्रियाओं के लिए उपयोग:

$_SESSION['flashMessage'] = 'Thank you for posting.'; 
header("Location: your-page.php'); 

और फिर पुन: निर्देशन पा के लिए निम्न जोड़ने जीई:

if ($_SESSION['flashMessage']) { 
    echo $_SESSION['flashMessage']; 
    $_SESSION['flashMessage'] = NULL; 
} 
+0

अंतिम पंक्ति '$ _SESSION [' flashMessage '] = NULL नहीं होनी चाहिए; ? – oezi

+0

@oezi - आप वास्तव में सही हैं, उचित जवाब में संशोधन किया। – simnom

3

एक सत्र में मेसेज को सहेजें। इसे प्रदर्शित करें, और सत्र चर को अनसेट करने के बाद।

0

जब आप भेजें अनुप्रेषित के माध्यम से $ _GET सरणी इस तरह एक चर कुछ:

header("LOCATION: index.php?msg=1"); 

सूचकांक की जांच पर $ _GET [ 'msg'] == अगर 1 फिर अपने संदेश

0

आप पीआरजी पैटर्न लागू करना चाह सकते हैं। असल में आप टिप्पणी पोस्ट करते हैं और सर्वर क्लाइंट को क्वेरी पेज स्ट्रिंग में अतिरिक्त जानकारी के साथ आपके पृष्ठ पर एक पुनर्निर्देशन करने के लिए जवाब देता है क्योंकि वादिम ने तर्क दिया था।

"सुरुचिपूर्ण", सत्रहीन और कार्यात्मक।

1

पेज जहां टिप्पणी संसाधित किया जाता है पर:

if($success) 
{ 
    $_SESSION['userMsg'] = "<p>Your comment has been added. Thank you.</p>"; 
} 

किसी भी में/सभी पृष्ठों (लेकिन मुख्य रूप से कोई भी आप पर पुनः निर्देशित कर रहे हैं):

if($_SESSION['userMsg'] != '') 
{ 
    print $_SESSION['userMsg']; 
    unset($_SESSION['userMsg']; 
} 

यह आपको यह सोचते है कर रहे हैं सत्रों का उपयोग करके और इसलिए पहले session_start() फ़ंक्शन

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