czarni14
30.08.2010, 22:26:29
Witam,
napisałem skrypt pobierający plik w dwóch wersjach.
W pierwszej wysyłam 3 nagłówki: Content-Type, Content-Disposition, Content-Length, a na końcu dodaję linijkę readfile, dzięki której wyświetla mi się okienko do pobrania pliku. Jednak po wrzuceniu skryptu na serwer, przestaje mi on działać, za to działa na localhoscie.
W drugiej wersji użyłem jednego nagłówka - "Location". Działa doskonale, tylko że już nie mam wpływu na nazwę pliku - a tam są jakieś krzaczki. Czy mogę jakoś wpłynąć na tę nazwę?
I jaka jest różnica w obu metodach? Która lepsza?
erix
30.08.2010, 22:52:05
Może lepiej pokaż listingi.
czarni14
30.08.2010, 23:04:37
header("Content-Type: audio/mpeg3"); header("Content-Disposition: attachment; filename=".$mp3_name.".mp3;" ); header("Content-Length: ".$mp3_size);
Teraz zauważyłem, że jednak plik jest pobierany na innym serwerze niż localhost (bo na localu działa dobrze), tylko że z malutką wielkością typu 840 kb, zamiast 5 MB. Zmienna $mo3_size ma prawidłową wartość.
Dlaczego ten skrypt działa poprawnie na localhoście, a na serwerze już nie?
erix
31.08.2010, 10:27:51
Limit pamięci?
Spróbuj wysyłać paczkami, a nie przez
readfile.