Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Funkcja pausowania w downloadzie przez php
Paul
post
Post #1





Grupa: Zarejestrowani
Postów: 636
Pomógł: 0
Dołączył: 22.10.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Witam. Mam napisany skrypt do downloadu standardowo - force download, readfile.... No i robi sie probem z tym przy wiekszych plikach poniewaz to nie obsluguje wstrzymywania.... Czy wie ktos moze jak mozna "odebrac informacje od jakiegos sciagacza (DAP, get right, flash get etc.) - od kad trza wysylac plik"??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
hwao
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




Nie zabardzo rozumie oco Ci chodzi ale sprobuj zrobic licznik on line i zezeli rowna sie iles tam to (if) dajesz komunikat (echo)ble ble..
Go to the top of the page
+Quote Post
PMadej
post
Post #3


Vice-Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 395
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Cytat
Nie zabardzo rozumie oco Ci chodzi ale sprobuj zrobic licznik on line i zezeli rowna sie iles tam to (if) dajesz komunikat (echo)ble ble..


chyba nie wiesz co piszesz ... on chce przeslac komunikat nie do usera a do programu ... wg mnie to zalezy od serwera http bardziej niz od php ...
przeciez na chipie sciagasz z http i masz opcje resume ...
a do tego to np flash podczas robienia resume wysyla zapytanie o plik sprawdza jego sume kontrolna i jesli to ten sam to sprawdza offset i zaczyna sciagac od miejsca w ktorym skonczyl
Go to the top of the page
+Quote Post
Paul
post
Post #4





Grupa: Zarejestrowani
Postów: 636
Pomógł: 0
Dołączył: 22.10.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


No mniej wiecej o cos takiego mi chodzi jak na chipie, ale moim zdaniem to jest wlasnie kwestia php:

bo tak wysyla caly plik:

[php:1:345220a370]<?php
readfile($sciezka);
?>[/php:1:345220a370]

a tak wybrany fragment:

[php:1:345220a370]<?php
$file = fopen($sciezka, 'r+');
fseek($file, $offset, SEEK_SET);
$plik = fread($file, filesize($sciezka) - $offset);
fclose($file);
echo $plik;
?>[/php:1:345220a370]

Pytanie jak wziasc wartosc zmiennej $offset , ktora jakos trzeba uzyskac z sciagacza....

Pozatym testowalem na 2 serwerach (na OmniHttpd na moim kompie i na komercyjnym na apachu) i sie nie da resumowac... dlatego wlasnie kombinuje...
Go to the top of the page
+Quote Post
spenalzo
post
Post #5





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Musisz pobrać od klienta miejsce w którym zostało przerwane ściąganie - ale czy to da się (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
PMadej
post
Post #6


Vice-Administrator serwera


Grupa: Przyjaciele php.pl
Postów: 395
Pomógł: 0
Dołączył: 7.08.2003
Skąd: Kielce

Ostrzeżenie: (0%)
-----


jesli chcesz robic to za pomoca download managera przegladarki to raczej jest to nie mozliwe bo z tego co wiem zadna nie ma opcji resume ... a flashget ma wbudowana opcje resume wiec musi z tego korzystac i php nie ma nic do tego ...
flashget komunikuje sie bezposrednio z serwerem a nie poprzez php.
Go to the top of the page
+Quote Post
Paul
post
Post #7





Grupa: Zarejestrowani
Postów: 636
Pomógł: 0
Dołączył: 22.10.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat
Musisz pobrać od klienta miejsce w którym zostało przerwane ściąganie - ale czy to da się (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)


wlasnie - tylko jak? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
spenalzo
post
Post #8





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Zauważyłem, że TC przy ponowieniu pobierania pliku wysyla naglowek REST xx (miejsce od ktorego kontynuować). Poza tym - czy nie szkoda zachodu? To będzie trudne, jeżeli w ogóle mozliwe.
Go to the top of the page
+Quote Post
Paul
post
Post #9





Grupa: Zarejestrowani
Postów: 636
Pomógł: 0
Dołączył: 22.10.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


A jak to odebrac?

W ogole na poczatku chyba tego calego interesu musi byc cos ala header('resume-enabled');

Pozatym szukalem w google tego i nigdzie tego nie ma....
Go to the top of the page
+Quote Post
Paul
post
Post #10





Grupa: Zarejestrowani
Postów: 636
Pomógł: 0
Dołączył: 22.10.2003
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Jednak nie takie trudne i mozliwe, tylko trzeba bylo to znajesc... (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) :

[php:1:a79d4b0a01]<?php
header("Accept-Ranges: bytes");
?>[/php:1:a79d4b0a01]

To rozwiazuje problem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 20:26