Nasıl aynı sayfada birden çok PHP header içerik türlerini kullanabilirsiniz?

6 Cevap php

O bir belgede birden fazla başlık türlerini kullanmak mümkün mü? Örneğin:

header("Content-type: image/jpeg");
header('Content-Type: text/html; charset=utf-8');

text / html ... while gibi bütün sayfayı döndürür

header('Content-Type: text/html; charset=utf-8');
header("Content-type: image/jpeg");

Bir görüntü olarak tam sayfa döndürür .... Nasıl aynı sayfada içerik hem türlerini kullanabilirsiniz? Ben başında) üst ve ob_end_flush (at () ob_start kullanıyorum.

6 Cevap

Sen yapamazsın. Ama ne yapabilirim HTML böyle bir şey:

<img src="my_img.php" />

Of course my_img.php would be a PHP file that has a header("Content-type: image/jpeg"); line, and outputs your image.

Hayır, bir kaynak sadece bir ortam türü vardır. HTTP allows multipart messages birden varlıkları içerebilir. Ama yaygın olarak bugünün tarayıcınız tarafından desteklenmiyor değil.

Tamamı noktası content-type isteği işlemek nasıl tarayıcı anlatmaktır. Eğer text/html ve image/jpeg yolluyorlar eğer ne bir tarayıcı yapmak için beklediğiniz? Bu bir ya da diğer olmak zorundadır, her iki olamaz. text/html, bir catch-all türüdür.

Sen ikisini aynı anda kullanamazsınız, ancak isteğe bağlı olarak bir sorgu parametresi veya benzer dayalı birini veya diğer kullanabilirsiniz.

Bir sayfada içerik iki tip kullanarak getirmedi - kendi Content-Type başlığı var bu yüzden <img> elemanları ile normal bir HTML sayfası, örneğin, bu ayrı bir HTTP istekleri vardır.

Değil burada başarmak için çalışıyoruz ne tam olarak emin ...

Birisi ilk soru soruyor ne yapmak istersiniz neden insanlar soru zaman ben biraz tuhaf bulurum.

OP benzer bir ihtiyacı için, işe yaramadı, alternatif çözümler üzerinde çalışan birkaç saat geçirmiş olması, bu gerekli tam olarak ne olduğunu.

Ben gerektiren kullanım IMG etiketi aracılığıyla kökü yukarıda ve bu nedenle normalde mevcut değil okunan çoklu görüntüleme için, yani Erik gönderdi çözüm güzel ve zarif bir iş yok.

<img src="my_img.php" />

Bunu, ilgili görüntüyü bulduğu bir resim sürümünü falan oluşturur sırayla, bu sarıcı dosyaya parametreler için, her zamanki gibi, edebiliyoruz.

Özetle, mükemmel cevap ve teşekkür ederim.

Eğer ilgili resmi bulduğu için, sarıcı dosyaya geçiyoruz hangi parametreler hakkında dikkatli olun ve sadece ilgili görüntü değil, / etc / passwd veya herhangi bir diğer dosya.

Bu sabit kod komut baz dir en iyisidir ve giriş herhangi bir hiyerarşi kabul etmiyoruz. Bu (sizin komut veya yerde, bir db dizi) bir eşleme tablosunda arama tüm gerçek dosya isimlerini kullanan ve yapmak değil en iyisi