Pobranie pliku XML po kliknięciu w link

0

Zrobiłem niewielki generator pliku XML, w rezultacie zwraca on stringa ze wszystkimi danymi zapisywanymi do pliku XML. I tutaj wszystko jest OK. Ma to działać tak, że po kliknięciu w link pehap przechodzi do skryptu w którym wywoływany jest generator, robi co ma zrobić, zapisuje plik na dysku i otwiera okienko pobierania utworzonego pliku. I tutaj mam kłopot. Plik się generuje, trafia gdzie ma trafiać, otwiera się okienko do zapisu, i jak sobie kliknę "Otwórz" otwiera się plik xml, ale jego zwartość to nie wygenrowane dane a kod HTML z błędem Warning: readfile(/test/download/pliczek.xml): failed to open stream: No such file or directory. Tyle że zarówno plik i katalog istnieją. Co robię nie tak?

Wszystko działa poprawnie do momentu wywołania okienka do zapisu, wygląda to tak:

    header('Content-type: text/xml');
    header('Content-Disposition: attachment; filename="pliczek.xml"');
    readfile($_SERVER['CONTEXT_PREFIX'].'/'.DOWNLOADFOLDER.'/'.'pliczek.xml');
    die();

Jak to ugryźć? Najlepsze że taki sam kod, ale dla pliku CSV działa bez zarzutu, tylko przy XML się wysypuje

0

To jest kluczowe "No such file or directory. " Wygląda ze nie masz tego pliku. Może tez być ze np jest zablokowany przez jakiś inny proces.

0

Zmieniłem

readfile($_SERVER['CONTEXT_PREFIX'].'/'.DOWNLOADFOLDER.'/'.'pliczek.xml');

na

readfile($_SERVER['CONTEXT_DOCUMENT_ROOT'].DOWNLOADFOLDER.'/'.'pliczek.xml');

i jest ok,

1 użytkowników online, w tym zalogowanych: 0, gości: 1