2012-03-06 22 views
6

संभव डुप्लिकेट:
How to redirect users to another page?मैं एक php पेज को दूसरे php पेज पर कैसे रीडायरेक्ट कर सकता हूं?

मैं प्रोग्रामिंग के क्षेत्र में एक शुरुआत कर रहा हूँ .... मैं एक one..How करने के लिए एक php पृष्ठ रीडायरेक्ट करना चाहते हैं यह संभव है सबसे आसान तरीका है? मेरी अवधारणा उपयोगकर्ता आईडी और पासवर्ड की जांच करने के बाद लॉगिन पेज से होम पेज पर जाने के लिए है।

उत्तर

12
<?php 
    header("Location: your url"); 
    exit; 
?> 
+0

उत्तर के लिए धन्यवाद ..... – arunrc

+1

ध्यान दें कि यदि आप किसी अन्य वेबसाइट से लिंक करना चाहते हैं तो आपको www के सामने http: // को काम करने के लिए रखना होगा। –

+0

@ निश्चित रूप से रिकॉइंग। यह तुच्छ है। आपको प्रोटोकॉल निर्दिष्ट करना चाहिए ताकि यूआरएल मान्य हो। – Juvanis

1
<?php header('Location: /login.php'); ?> 

ऊपर PHP स्क्रिप्ट एक ही साइट

+0

हे, आपसे मिलकर अच्छा लगा।:) –

+0

क्या यह चैट में होना चाहिए? – MrCode

+0

@MrCode चैट समाप्त हो गया है :) ठीक है। – Juvanis

1

भीतर login.php करने के लिए एक Location हैडर भेजें रीडायरेक्ट करने के लिए उपयोगकर्ता पुनर्निर्देश। ध्यान रखें कि यह किसी भी अन्य आउटपुट भेजे जाने से पहले ही काम करता है।

header('Location: index.php'); // redirect to index.php 
+0

उत्तर के लिए धन्यवाद ..... – arunrc

1
<?php 
header('Location: http://www.google.com'); //Send browser to http://www.google.com 
?> 
+0

उत्तर के लिए धन्यवाद ..... – arunrc

-2

रीडायरेक्ट करने के लिए इसका उपयोग कर सकते

echo '<meta http-equiv="refresh" content="1; URL=index.php" />'; 

सामग्री = 1 भिन्न मान पर परिवर्तन पुनर्निर्देशन

+0

आह मेटा टैग .... – itachi

+0

मैं हमेशा रीडायरेक्ट करने के लिए मेटा टैग का उपयोग करता हूं। इसे आसानी से छेड़छाड़ करना आसान लगता है। – s3polz

+0

@ s3polz: मैं इन मेटा टैग के साथ समझने में असमर्थ हूं ... क्या आप संक्षेप में इसे समझा सकते हैं ... – arunrc

0

से पहले देरी को बढ़ाने के लिए किया जा सकता है बस आप इस डाल सकते हैं और आप करेंगे पुनर्निर्देशित किया जाना चाहिए।

<?php 

header("Location: your_page_name.php"); 

// your_page_name.php किसी भी पृष्ठ है जहाँ आप पुनर्निर्देशित करने के लिए

?> 
+0

उत्तर के लिए धन्यवाद ..... – arunrc

+0

आप हमेशा स्वागत करते हैं :) –

5

जबकि अन्य उत्तर के सभी काम चाहते हो सकता है, वे सब एक बड़ी समस्या है: यह करने के लिए ब्राउज़र पर निर्भर है तय करें कि अगर उन्हें कोई स्थान शीर्षलेख मिलता है तो क्या करना है। आम तौर पर ब्राउज़र अनुरोध को संसाधित करना बंद कर देता है और स्थान शीर्षलेख के साथ इंगित यूआरआई को रीडायरेक्ट करता है। लेकिन एक दुर्भावनापूर्ण उपयोगकर्ता केवल स्थान शीर्षलेख को अनदेखा कर सकता है और उसका अनुरोध जारी रख सकता है। इसके अलावा अन्य चीजें भी हो सकती हैं जो php दुभाषिया को स्थान शीर्षलेख के पीछे स्क्रिप्ट का मूल्यांकन जारी रखने का कारण बनती हैं, जो आपके इरादे से नहीं है।

छवि इस:

<?php 
if (!logged_id()) { 
    header("Location:login.php"); 
} 

delete_everything(); 
?> 

क्या आप चाहते हैं और उम्मीद है कि लॉगिन नहीं उन प्रवेश पृष्ठ पर पुनः निर्देशित कर रहे हैं, ताकि केवल उन में लॉग इन delete_everything कर सकते हैं। लेकिन अगर स्क्रिप्ट को स्थान शीर्षलेख से पहले निष्पादित किया जाता है तो भी सबकुछ हटा दिया जाता है। इस प्रकार, यह हमेशा के बाद एक स्थान हैडर एक बाहर निकलने डाल करने के लिए, इस तरह आयात है:

<?php 
if (!logged_id()) { 
    header("Location:login.php"); 
    exit; // <- don't forget this! 
} 

delete_everything(); 
?> 

तो, आपके सवाल का जवाब देना: (न सिर्फ php एक php पेज से दूसरे पेज पर रीडायरेक्ट करने, आप कर सकते हैं किसी भी पृष्ठ इस तरह से) पर पुन: निर्देशित, इस का उपयोग करें:

<?php 

header("Location:http://www.example.com/some_page.php"); 
exit; // <- don't forget this! 

?> 

छोटे नोट: HTTP मानक कहता है कि आप स्थान शीर्षक में संपूर्ण URL (http प्रदान करनी चाहिए: // ... की तरह ऊपर मेरी उदाहरण में) भी अगर आप एक ही डोमेन पर दूसरी फाइल पर रीडायरेक्ट करना चाहते हैं। लेकिन व्यावहारिक यूआरएल (स्थान: some_page.php) सभी ब्राउज़रों में काम करते हैं, हालांकि मानक अनुपालन नहीं है।

+0

मूल्यवान उत्तर के लिए धन्यवाद .... – arunrc

+0

अगला [HTTP/1.1 पुनरीक्षण ("HTTPbis")] (http://tools.ietf.org/wg/httpbis/) वास्तविक वर्तमान मानक प्रथाओं को अनुमोदित करने के लिए स्थान: हेडर के लिए स्पष्ट रूप से संबंधित URL की अनुमति देता है। – mario

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