Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Nie pokazuje rozmiaru pliku
Forum PHP.pl > Forum > Przedszkole
marekmm
Mam taki oto skrypt ale jest mały problem nie pokazuje mi rozmiaru pliku prosiłbym o pomoc

  1. <?php
  2. @ini_set('implicit_flush', 1);
  3. header("Content-Type: video/flv");
  4. header("Content-Disposition: attachment; filename=video.flv;" ); ;
  5. header('Content-Transfer-Encoding: binary');
  6. header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // data w przeszłości
  7. header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  8. header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
  9. header("Content-Length: " .$_GET['v']);
  10. header("Cache-Control: post-check=0, pre-check=0", false);
  11. header("Pragma: no-cache");
  12. if(!empty($_GET['v']))
  13. {$link = $_GET['v'];
  14.  
  15. $fp = fopen($link,'rb');
  16. while (!feof($fp)) {
  17. echo fgets($fp);
  18. flush();
  19. }
  20. fclose($fp);
  21. }
  22. ?>
!*!
filesize

Poza tym przejdź na coś bardziej nowoczesnego niż fopen. Directoryiterator
Tutaj masz dobry przykład jak to zastosować.
thek
!*! a po co do jednego pliku zaciągać DirectoryIterator? Żeby kupić sobie książkę wykupujesz całą księgarnię? winksmiley.jpg W tym przypadku to zbędne i fopen w zupełności wystarczy. Musi tylko do tego pliku właściwie się dobrać funkcją fopen.
marekmm
Cytat(thek @ 24.07.2010, 11:12:42 ) *
!*! a po co do jednego pliku zaciągać DirectoryIterator? Żeby kupić sobie książkę wykupujesz całą księgarnię? winksmiley.jpg W tym przypadku to zbędne i fopen w zupełności wystarczy. Musi tylko do tego pliku właściwie się dobrać funkcją fopen.


A jak to zrobić bo się pogubiłem już w tym z góry dziękuje za pomoc
muk4
  1. filesize('nazwa_pliku.cos')
?
marekmm
Cytat(muk4 @ 24.07.2010, 11:51:17 ) *
  1. filesize('nazwa_pliku.cos')
?


Nie działa

I jak nie da się nic zrobić questionmark.gif
thek
A sprawdzałeś czy ścieżka prawidłowa? Skoro filesize nic nie zwraca, to pewnie zwraca false, czyli błąd.
marekmm
Cytat(thek @ 25.07.2010, 10:20:28 ) *
A sprawdzałeś czy ścieżka prawidłowa? Skoro filesize nic nie zwraca, to pewnie zwraca false, czyli błąd.



Ścieżka jest prawidłowa smile.gif i dlatego nie rozumie dlaczego jest błąd
!*!
Podaj kod w obecnej formie.
marekmm
Cytat(!*! @ 25.07.2010, 11:01:27 ) *
Podaj kod w obecnej formie.


Oto kod w obecnej formie smile.gif


  1. <?php
  2. @ini_set('implicit_flush', 1);
  3. header("Content-Type: video/flv");
  4. header("Content-Disposition: attachment; filename=video.flv;" ); ;
  5. header('Content-Transfer-Encoding: binary');
  6. header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // data w przeszłości
  7. header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
  8. header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
  9. header("Content-Length: " .$_GET['v']);
  10. header("Cache-Control: post-check=0, pre-check=0", false);
  11. header("Pragma: no-cache");
  12. if(!empty($_GET['v']))
  13. {$link = $_GET['v'];
  14.  
  15. $fp = fopen($link,'rb');
  16. while (!feof($fp)) {
  17. echo fgets($fp);
  18. flush();
  19. }
  20. fclose($fp);
  21. }
  22. ?>
  23.  
Fifi209
i gdzie to filesize bo nie widzę?
!*!
To nic przez ten czas nie zrobiłeś?



Poza tym jak wygląda ścieżka? Zabezpiecz to jakoś, bo na get daleko nie zajedziesz.
marekmm
Cytat(fifi209 @ 25.07.2010, 11:37:24 ) *
i gdzie to filesize bo nie widzę?


No właśnie w tym tkwi problem jak go umieścić smile.gif
!*!
marekmm zacznij od nauki PHP (a nie kopiujesz gotowce), pytasz o podstawy, podaliśmy Ci rozwiązanie na tacy.
marekmm
Cytat(!*! @ 25.07.2010, 12:18:01 ) *
marekmm zacznij od nauki PHP (a nie kopiujesz gotowce), pytasz o podstawy, podaliśmy Ci rozwiązanie na tacy.



To nie jest gotowiec ten skrypt był pisany na zamówienie ale ta osoba co pisała skrypt przeoczyła o tej opcji rozmiaru pliku i niestety nie mogę się skontaktować z tym Panem prawdopodobnie jest na wakacjach. A skrypt jest mi potrzebny na wczoraj smile.gif a jeśli chodzi o php to nie pisałem że potrafię programować w tym języku.
muk4
  1. if(!empty($_GET['v']))
  2. {$link = $_GET['v'];
  3. $size = filesize($link); // tutaj
  4. echo $size; //wyswietlenie
  5. $fp = fopen($link,'rb');
  6. while (!feof($fp)) {
  7. echo fgets($fp);
  8. flush();
  9. }
  10. fclose($fp);
  11. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.