| Autor | Zpráva | ||
|---|---|---|---|
| xlifer Profil |
#1 · Zasláno: 9. 2. 2011, 10:07:16 · Upravil/a: xlifer
Generuji RSS soubor staticky zvlášť a chtěl bych dosáhnout automatického zobrazení. Zkoušel jsem použít hlavičku s typem text/xml, ale to mi nefunguje.
Soubor rss.xml mám uložený tedy zvlášt a když udělám include "soubor.xml" s hlavičkou, tak to samozřejmě hází chybu.... <?
header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
header('Content-Type: text/xml; charset=windows-1250');
include "rss.xml";
?>Předem moc díky za radu. |
||
| xlifer Profil |
#2 · Zasláno: 9. 2. 2011, 11:38:36 · Upravil/a: xlifer
Tak už jsem na to asi přišel a mám takové řešení :
Zajímá mě názor zde zkušenějších? $file = "rss.xml";
If (Is_Readable($file) && File_Exists ($file)):
Header("Expires: ".GMDate("D, d M Y H:i:s")." GMT");
Header("Last-Modified: ".GMDate("D, d M Y H:i:s")." GMT");
Header("Content-Type: text/xml; charset=windows-1250");
$fh = FOpen($file, "r");
$data = FRead($fh, FileSize($file));
FClose($fh);
echo $data;
endif;A nepřidat do hlavičky ješte: ? Header("Pragma: No-cache");
Header("Cache-Control: No-cache, Must-revalidate"); |
||
| Joker Profil |
#3 · Zasláno: 9. 2. 2011, 12:39:32
|
||
| xlifer Profil |
#4 · Zasláno: 9. 2. 2011, 15:30:04 · Upravil/a: xlifer
Joker:
Přes readfile jsem měl problém s tím, že se mi soubor nabídne ke stažení (attachment dle příkladu na php.net), ale já potřebuji, aby se přímo otevřel do prohlížeče automaticky? Lze to nějak vyřešit? Pak by to bylo ideální. |
||
| xlifer Profil |
#5 · Zasláno: 9. 2. 2011, 15:54:34
Něco jsem měl asi špatně, toto mi funguje výborně:
$file = "rss.xml"
if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}A jak to, že nemusí být v hlavičce definice typu souboru TEXT/XML ?? |
||
| xlifer Profil |
#6 · Zasláno: 9. 2. 2011, 17:20:34
Nevím proč, ale Explorer zkrátka nebere z hlavičky typ XML
header('Content-Type: text/xml; charset=windows-1250');je úplně jedno co tam napíšu a vždy mi to vyhodí pouze ten výstup jako text, nikoliv XML. ve FF to jede dobře týká se to příspěvku #2 (nevím jak udělat ten odkaz na příspěvek) |
||
|
Časová prodleva: 16 let
|
|||
0