Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]plik nie pobiera się
Forum PHP.pl > Forum > Przedszkole
tomek34
Moj system sklada się z dwoch plików php. Jeden listuje zawartosc katalogu drugi sluzy do pobierania.
Plik pierwszy jest następujący:
  1. <?php
  2. $dir = "D:sermoidane";
  3.                function printDir($dir)
  4.                {
  5.                  $fd = opendir($dir);
  6.                    if(!$fd) return false;
  7.                      while (($file = readdir($fd)) !== false){
  8.                    $pos = strpos($file, ' ');
  9.                    if($file != "." && $file != ".." && $pos === false){
  10.                    echo("<a href=\"download.php?name=");
  11.                    echo("$file\" class='style3'>$file</a><br />");
  12.                    }
  13.                    }
  14.                    closedir($fd);
  15.                }
  16.                printDir($dir);
  17. ?>

plik drugi download.php następujący:
  1. <?php
  2. $filesPath = "./";
  3.  
  4. function securityCheck($name)
  5. {
  6. $wyr = "^[a-z0-9_-]+(.[a-z0-9_-]+)*$";
  7. return eregi($wyr, $name);
  8. }
  9. function send($fileName, $filePath)
  10. {
  11.  
  12. $fd = fopen($filePath.$fileName,"r");
  13. $size = filesize($filePath.$fileName);
  14. $contents = fread($fd, filesize($filePath.$fileName));
  15.  
  16. fclose($fd);
  17.  
  18. header("Content-Type: application/octet-stream");
  19. header("Content-Length: $size;");
  20. header("Content-Disposition: attachment; filename=$fileName");
  21.  
  22. echo $contents;
  23. }
  24. if(isSet($_GET['name'])){
  25. if(!securityCheck($_GET['name'])){
  26.   echo('Nie ma takiego pliku na serwerze!');
  27. }
  28. else{
  29.   send($_GET['name'], $filesPath);
  30. }
  31. }
  32. else{
  33. echo('Nie ma takiego pliku na serwerze!');
  34. }
  35. ?>

Podejrzewam błąd w pliku drugim, ponieważ zawartośc wyświetlana jest poprawnie. Problem zaczyna się gdy chcę pobrać lub otworzyć plik. Akcja otwiera włąściwy program ale nie pobiera do niego pliku. To samo dzieje się przy próbie pobrania. wtedy to pobierany jest plik o wielkości 0 bajtów. Czy ktoś może mi pomóc rozwiązać ten problem?
Bardzo proszę o pomoc.
Pozdrawiam
erix
Jeden temat wystarczy: http://forum.php.pl/index.php?showtopic=124300&hl=
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.