⊗ppPmHpRHP 400 of 447 menu

PHP में HTTP रिस्पॉन्स हेडर की समस्या

HTTP नियमों के अनुसार, पहले HTTP हेडर भेजे जाते हैं, और उसके बाद HTTP रिस्पॉन्स का बॉडी भाग। इस वजह से PHP में header फ़ंक्शन के साथ काम करने की अपनी विशेषताएं हैं।

बात यह है कि अगर इस फ़ंक्शन को कॉल करने से पहले स्क्रीन पर कुछ आउटपुट होगा, तो उसे रिस्पॉन्स के बॉडी की शुरुआत माना जाएगा। इस स्थिति में header फ़ंक्शन का कॉल PHP चेतावनी का कारण बनेगा जिसका टेक्स्ट होगा headers already sent. ऐसा होने पर हेडर शायद भेजे भी जाएं। शायद त्रुटि भी न दिखे (PHP की सेटिंग्स पर निर्भर करता है)। लेकिन अक्सर ऐसा सिर्फ लोकल मशीन पर होगा, और जब साइट को इंटरनेट पर डिप्लॉय किया जाएगा तो सब कुछ टूट जाएगा।

स्क्रीन पर आउटपुट का मतलब कोई भी टेक्स्ट है। उदाहरण के लिए, इस तरह:

टेक्स्ट <?php header('Content-Type: text/html'); ?>

या खाली लाइन:

<?php header('Content-Type: text/html'); ?>

या स्पेस:

<?php header('Content-Type: text/html'); ?>

या टैग:

<div> <?php header('Content-Type: text/html'); ?> </div>

या echo के माध्यम से आउटपुट:

<?php echo 'abc'; header('Content-Type: text/html'); ?>

या var_dump के माध्यम से आउटपुट:

<?php $str = 'abc'; var_dump($str); header('Content-Type: text/html'); ?>

PHP चेतावनियाँ भी स्क्रीन आउटपुट मानी जाएंगी। निम्नलिखित उदाहरण में जानबूझकर एक गैर-मौजूदा वेरिएबल का उपयोग किया गया है, जिसके कारण एक चेतावनी का आउटपुट होगा:

<?php $text += 1; header('Content-Type: text/html'); ?>

PHP कोड ब्लॉक के बीच में खाली जगह (ब्रेक) भी स्क्रीन आउटपुट उत्पन्न करती है:

<?php echo 'abc'; ?> <?php header('Content-Type: text/html'); ?>

जानबूझकर header फ़ंक्शन से पहले स्क्रीन आउटपुट उत्पन्न करें। उत्पन्न होने वाली त्रुटि के टेक्स्ट का अध्ययन करें।

इस कोड में की गई गलती को सही करें:

<!DOCTYPE html> <html> <head> <?php header('Content-Type: text/html'); ?> </head> <body> टेक्स्ट <body> <html>
हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें