php - redirecting with if statment based on cookie using header('location:') gives weird error in firefox -


मैं अपने दर्शकों को उदाहरण के लिए http: //localhost/site/test.php? Lang को पुनर्निर्देशित करने का प्रयास कर रहा हूं? Lang = En_US इस तरह कुकी में देश कोड के आधार पर:

  यदि (isset ($ _ cookie ['देश'])) {$ country = $ _COOKIE ['देश' ]; हैडर ('स्थान: test.php? Lang = en_US'); अगर ($ देश == "नहीं") {हेडर ('स्थान: test.php? Lang = no_NO'); }} और {हेडर ('स्थान: test.php? Lang = en_US'); }  

लेकिन मुझे फ़ायरफ़ॉक्स में यह अजीब त्रुटि मिलती है: पेज ठीक से रीडायरेक्ट नहीं कर रहा है

एक समाधान मिला:

  अगर (! Isset ($ _ GET ['lang'])) {if (isset ($ _ cookie ['देश'])) {$ country = $ _COOKIE ['देश']; $ Redirect = "en_US"; अगर ($ देश == "नहीं") {$ redirect = "no_NO"; शीर्ष लेख ('स्थान: अपराध। Php? Lang ='। $ Redirect); } यदि ($ देश == "एन") {$ redirect = "en_US"; शीर्ष लेख ('स्थान: अपराध। Php? Lang ='। $ Redirect); }} और {हेडर ('स्थान: अपराध। Php? Lang = en_US'); }}  

समस्या यह है कि यह बिना शर्त रीडायरेक्ट है, और हमेशा स्वयं के लिए, जिससे एक अनंत लूप जो फ़ायरफ़ॉक्स का पता लगाता है और बंद हो जाता है अंतिम पेज तक पहुंचने के बाद आपको पुनर्निर्देशों को रोकने के लिए शर्तों को जोड़ने की आवश्यकता है।


Comments