Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wymuszanie pobierania przez PHP
Forum PHP.pl > Forum > PHP
patrix007
Sprawa wygląda tak:
generuję w PHP dynamicznie XML z bazy danych i w tym momencie wygląda to tak, że do przeglądarki wczytuje się XML,
chciałbym uzyskać taki efekt aby po wygenerowaniu tego XML przeglądarka zinterpretowała to jako plik do pobrania.
Czy można wymusić w przeglądarce pobranie ?

Zaznaczam, że jest to generowane dynamicznie i nie cachowane do pliku na serwerze...

Dzięki za pomysły.
Zyx
Jest to kwestia tego, jakie nagłówki wyślesz do przeglądarki. Dla XML-a jest application/xml, ale wiele przeglądarek interpretuje to jako wyświetlenie. Spróbuj dać application/octet-stream* oznaczające "ciąg binarny o nieznanej zawartości" - w 99,99999999999999999% przypadków przeglądarka udostępni wtedy okienko do zapisu pliku. Wykorzystaj jeszcze nagłówki do wybrania nazwy pliku i jego wielkości, to będzie to jeszcze bardziej elegancko obsługiwane.

* i nawet nie próbuj tego napisać bez pauzy - w sieci działa jakaś grupka "inteligentnych inaczej" propagujących wierutne kłamstwo, że przeglądarka Opera wymaga nagłówka application/octetstream, tymczasem wysłanie takiego nagłówka ją totalnie ogłupia. Ci ynteligenci pracowali m.in. przy takich skryptach, jak phpBB czy vBulletin i efekt jest taki, że pod Operą można się tam pociąć, próbując pobrać załącznik.
patrix007
Dzięki yahoo.gif
Działa bardzo dobrze.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.