Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> oglądanie filmu i zacinanie strony
matx132
post 4.04.2011, 16:59:16
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

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


Witam,
otóż chciałem sobie zrobić skrypt to oglądania filmów, po prostu mam listę wybieram interesujący mnie odcinek i oglądam, ale napotkałem na problem, a dokładniej po wejściu na stronę, wybraniu odcinka i naciśnięciu oglądaj pokazuje się ładnie player i można oglądać ale (zawsze jakieś ale) od początku pokazania się playera nie mogę nic zrobić na stronie to znaczy strona się zacina (mogę oglądać film ale wejść na inną podstronę nie) i teraz nie wiem w czym problem.
Czy ktoś może mi pomóc?

Oto skrypt który pobiera video z różnych stron.
  1. ini_alter ("memory_limit", "1024M");
  2.  
  3. function download($host, $port, $url,$name,$cookie){
  4. $nn="\r\n";
  5. $port=80;
  6. if ($cookie) {
  7. if (is_array ( $cookie )) {
  8. for($i = 0; $i < count ( $cookie ); $i ++) {
  9. $cookies .= "Cookie: " . $cookie [$i] . $nn;
  10. }
  11. } else {
  12. $cookies = "Cookie: " . $cookie . $nn;
  13. }
  14. }
  15. if(is_numeric($_GET['start']))
  16. $start='Content-Range: bytes '.$_GET['start'].$nn;
  17. else
  18. $start="";
  19. $request = "GET " . str_replace ( " ", "%20", $url ) . " HTTP/1.1" . $nn .
  20. "Host: " . $host . $nn .
  21. "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14" . $nn .
  22. "Accept: */*" . $nn .
  23. "Accept-Language: en-us;q=0.7,en;q=0.3" . $nn .
  24. "Accept-Charset: utf-8,windows-1251;q=0.7,*;q=0.7" . $nn .
  25. "Pragma: no-cache" . $nn . "Cache-Control: no-cache" . $nn .
  26. $start.
  27. $cookies . "Connection: Close" . $nn . $nn ;
  28. $errno = 0;
  29. $errstr = "";
  30. $hosts = ( $host) . ':' . ($port);
  31. $fp = @stream_socket_client ( $hosts, $errno, $errstr, 120);
  32.  
  33. if (! $fp) {
  34. echo "błąd";
  35. }
  36.  
  37. if ($errno || $errstr) {
  38. die ("bląd");
  39. }
  40. fputs ( $fp, $request );
  41. fflush ( $fp );
  42. $header="";
  43. do {
  44. $header .= fgets ( $fp, 36384 );
  45. } while ( strpos ( $header, $nn . $nn ) === false );
  46.  
  47.  
  48. if (! $header) {
  49. die ("bląd");
  50. }
  51. $responsecode = "";
  52. preg_match ( '/^HTTP\/1\.0|1 ([0-9]+) .*/', $header, $responsecode );
  53. if (($responsecode [1] == 404 || $responsecode [1] == 403) && $saveToFile) {
  54. die("ERROR");
  55. }
  56. preg_match('#Content-Length: (.*)\n#Us',$header,$match);
  57. $match[1]=str_replace("\n","",$match[1]);
  58. $match[1]=str_replace("\r","",$match[1]);
  59. $bytesTotal=$match[1];
  60. $ContentType = trim (cut_str( $header, "Content-Type:", "\n" ) );
  61. if(ini_get('zlib.output_compression'))
  62. ini_set('zlib.output_compression', 'Off');
  63. header('Content-Disposition: inline; filename="' . $name . '"');
  64. header("Etag: $_SESSION[etag]");
  65. header("Content-Length: ".$bytesTotal);
  66. header("Cache-Control: private");
  67. header('Content-Transfer-Encoding: binary');
  68. HEADER("Accept-Ranges: bytes");
  69. header("Vary: User-Agent");
  70. header('Keep-Alive: timeout=1, max=100');
  71. header("Content-Type: $ContentType");
  72.  
  73. do {
  74. $data = @fread ( $fp, ( 1024) );
  75. if ($data == '')
  76. break;
  77. echo $data;
  78. }while( strlen($data)> 0 );
  79. fclose($fp);
  80. }
  81. $cookies=$_SESSION['cookie'];
  82. $url=($_GET['id']);
  83. $url=parse_url($url);
  84. $name=str_replace("+"," ",$_GET['name']).".flv";
  85. download($url['host'], 80, $url['path'],$name,$cookies);


co by należało zmienić/dodać? używam stream_socket_client tylko dlatego że w curl podobno nie idzie zrobić aby przekazywał pobrane dane, tylko czeka aż ściągnie wszystko i wtedy dopiero pokazuje, nie chcę zapisywać pliku na swoim serwerze.

NIE OCZEKUJE GOTOWEGO SKRYPTU, CHCIAŁBYM WSKAZÓWKI CO POPRAWIĆ/ZMIENIĆ ABY DZIAŁAŁO DOBRZE.


pozdrawiam i z góry dziękuje za pomoc
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:44