Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z zapisywaniem sciągniętych plików
Forum PHP.pl > Forum > PHP
adamski9000
Witam

Spotkałem się z dziwnym problem przy zastosowaniu skryptu do ściągania plików ze strony. Mianowicie. Po kliknięciu na link na stronie www ściągam plik na dysk. Niby wszystko ok, ale po otwarciu zapisanego pliku, na końcu każdego pliku znajduje się kod html strony www z której sciągnięto plik. Z oczywistych względów jest to niedopuszczalne. Poniżej załączam kod scryptu.

  1.  
  2. <a href="download.php?plik=filedemo.sis">pobierz</a>
  3.  
  4. if( $_GET['plik'] )
  5. {
  6. $path = $_SERVER['DOCUMENT_ROOT']."/download/";
  7. $fullPath = $path.$_GET['plik'];
  8.  
  9. if ($fd = fopen ($fullPath, "r"))
  10. {
  11. $fsize = filesize($fullPath);
  12. $path_parts = pathinfo($fullPath);
  13.  
  14. header("Content-type: application/octet-stream");
  15. header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
  16. header("Content-length: $fsize");
  17. header("Cache-control: private"); //use this to open files directly
  18. while(!feof($fd))
  19. {
  20. $buffer = fread($fd, 3074);
  21. echo $buffer;
  22. }
  23. }
  24. fclose ($fd);
  25. }
  26.  


Czy może wie ktoś w czym problem ?

Zaznaczam, iż próbowałem kilka różnych klass i wszędzie jest podobny problem.


pozdrawiam
Adamski
nospor
Skrypt, który zwraca plik, nie może nic wiecej oprócz pliku pluć do przeglądarki. Ani przed ani po. A u ciebie ten skrypt leży w środku pliku, w którym jest kod html.
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.