Nejste přihlášeni
Stránky 1
Dobrý den,
dnes najednou přestal fungovat můj skript pro řízený download souborů , aniž bych na něm prováděl jakékoliv změny.
Skript má vytvořit header pro download a poslat data ze souboru, který čtu metodou readfile z url, které se nachází na stejné doméně.
Ještě včera vše fungovalo, dnes se skript zasekne na readfile a po vypršení timeoutu se stáhne prázdný soubor. Pokud readfile nahradím echo "test", tak se normálně stáhne textový soubor obsahující slovo "test"
Jaká změna to způsobila a jak to opravit ???
Děkuji za odpověď
Problematický kód jsem zkopíroval do tohoto skriptu:
http://knihovnaneeetest.8u.cz/MyDown_1.php
<?php
$file_url = "http://knihovnaneeetest.8u.cz/nee/P/Pamuk_Orhan/Jmenuji_se_Cervena.mobi";
header('Content-Type: application/octet-stream');
header("Content-Transfer-Encoding: Binary");
header("Content-disposition: attachment; filename=\"" . basename($file_url) . "\"");
ob_clean();
flush();
//echo $file_url;
readfile($file_url);
exit;
?>
Upravil kristianchytry (2015-01-09 19:21:22)
Offline
Skúšali ste použiť príklad ktorý je uvedený tu http://php.net/readfile ? Nechápem použitie celej url keďže obrázok sa nachádza na rovnakej doméne, tj postačuje zadať len
$file_url = "nee/P/Pamuk_Orhan/Jmenuji_se_Cervena.mobi";
Offline
Díky za rychlou odpověď, problém se zadáním relativní adresy místo kompletního url vyřešil! :-) SUPER
Pořád to ale nevysvětluje.
1)Proč to do včerejška čtvrt roku fungovalo?
2)Proč to včera přestalo fungovat?
Upravil kristianchytry (2015-01-10 07:04:28)
Offline
Nastavenie allow_url_fopen je On na každom serveri, takže by mala fungovať práve táto možnosť.
/e: Mne to funguje:
http://demo.karpiel.sk/readfile/
<?php
$file = 'http://demo.karpiel.sk/readfile/light.jpg';
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
Portfólio
E-mail: eduard(at)karpiel.sk
Offline
Stránky 1