⊗ppPmHpRHP 400 of 447 menu

PHP'de HTTP Yanıt Başlıkları ile İlgili Sorun

HTTP kurallarına göre, önce HTTP başlıkları gönderilir, ardından HTTP yanıt gövdesi gelir. Bu nedenle, PHP'de header işleviyle çalışmanın kendine özgü özellikleri vardır.

Olay şu ki, bu işlevi çağırmadan önce ekrana herhangi bir çıktı yapılırsa, bu çıktı yanıt gövdesinin başlangıcı olarak yorumlanır. Bu durumda header işlevini çağırmak, headers already sent (başlıklar zaten gönderildi) metniyle bir PHP uyarısına yol açacaktır. Bu esnada başlıklar yine de gönderilebilir. Hatta hata bile görüntülenmeyebilir (PHP ayarlarına bağlıdır). Ama çoğu zaman bu sadece local ortamda (lokalde) olur, site internete çıkarıldığında ise her şey bozulur.

Ekrana çıktı yapmak denildiğinde, herhangi bir metin kastedilir. Örneğin, şu şekilde:

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

Veya boş bir satır:

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

Veya bir boşluk:

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

Veya bir etiket:

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

Veya echo ile çıktı:

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

Veya var_dump ile çıktı:

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

PHP uyarıları bile ekrana çıktı olarak sayılır. Aşağıdaki örnekte kasıtlı olarak var olmayan bir değişkene erişiliyor, bu da bir uyarı çıktısına yol açacak:

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

PHP etiketlerinin arasına girilen boşluklar/çıktılar da ekrana çıktı üretir:

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

header işlevinden önce kasıtlı olarak ekrana çıktı oluşturun. Ortaya çıkan hatanın metnini inceleyin.

Bu kodda yapılan hatayı düzeltin:

<!DOCTYPE html> <html> <head> <?php header('Content-Type: text/html'); ?> </head> <body> text <body> <html>
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet