![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 1 Dołączył: 1.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
na początku zaznaczam, że przejrzałem wiele tematów nt. i każdy skrypt jest podobny a nawet identyczny jak mój. Mam problem, mianowicie mam skrypy do downloadu plików Kod $row = mysql_fetch_array($result, MYSQL_ASSOC); $length = filesize("./files/" .$row['src']); header("Content-type:" . $row['type']); header('Content-Disposition: attachment; filename="' . $row['name'] . '"'); header("Content-Length: " . $length); readfile("./files/" . $row['src']); Wszystko jest ok, skrypt wysyła plik do przeglądarki jednak nie rozponaje długości pliku, przez co użytkownik nie wie ile procent zostało ściągnięte. Z góry dziękuje za pomoc. Działanie można zobaczyc na http://sendfile.eu/download.php?id=4aId4C Ten post edytował kefir1989 28.02.2009, 13:39:30 -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 1 Dołączył: 1.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Cytat niestety ta funkcja nie rozwiązała problemu. Ma ktoś jakieś inne pomysły? Wydaje się to głupie, ale może to wina serwera? -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
~kefir1989, popraw, proszę, tytuł tematu. Na Przedszkolu dodajemy tagi do tytułu określające jakiego języka/systemu pytanie dotyczy. Pozdrawiam!
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Wyświetl sobie $length. I spróbuj jeszcze dać przed tą funkcją http://pl.php.net/manual/en/function.clearstatcache.php
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 1 Dołączył: 1.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Niestety do tej pory nic nie pomogło
![]() Jest to dla mnie tym bardziej dziwne, że wszystkie kawałki kodów jakie znalazłem w sieci są podbone lub wręcz identyczne do mojego. Problem leży chyba po stronie serwera. Na lokalnym serwerze właśnie ściągałem film (700mb) i można zauważyć, że na lokalu pojawia się wielkośc pliku). Ten post edytował kefir1989 28.02.2009, 14:19:33 -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 55 Pomógł: 4 Dołączył: 19.05.2003 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy pomoze, ale czemu nie sprobowac?
Mialem troche inny problem, mianowicie nie keszowalo mi obrazkow wysylanych z PHP. Po wielu stronach manuala i probach wkoncu doszedlem do takiego kodu:
funkcji pgimage_output_headers() nie podaje bo mysle ze nie ma nic do rzeczy. EDIT: hmm, wlasciwie to tam jest jeden naglowek ktory moze sie tu przydac: header("Connection: close"); Ten post edytował Orkan 28.02.2009, 15:56:26 -------------------- The fastest app with PHP: <?php die('Hello World'); ?>
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 6.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
nie jestem pewien czy włączałeś buforowanie, ale jeśli tak zdaje sie zę musisz zakodować content (sprawdź sobie jakie headery wysyłąne są do przeglądarki i czy zgadzają sie z wielkością pliku). i wted użyjesz ob_get_content() do pobrania zawartosci buforu, ob_clean() (czyszczenie), zakodujesz pobrany wcześniej do zmiennej ob_get_content() za pomoca gzcompress(), sprawdzisz mu strlen i wpiszesz go do content-length, na końcu echo zakodowanej zawartosci i zakończenie ob z wymyciem.
Ten post edytował marq3d 24.08.2009, 13:52:57 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 11:31 |