Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Valid stream source PHP warning
Forum PHP.pl > Forum > PHP
gsmfun
Od jakiegos czasu zacalem otrzymywac blad przy pobieraniu bliku mianowicie taki :

PHP Warning: fclose(): 8 is not a valid stream resource in /home/mchtpl/public_html/mfh/download2.php on line 90

ponizej zalacznik download2.php

proszę o pomoc w tej sprawie

fragment kodu z download2.php

////////////////
  1. <?
  2. echo "<center>$lang[inlink]</center>";
  3. ?></center></td></tr></table><p style="margin:3px;text-align:center"><?
  4. include("./footer.php");
  5. die();
  6. }
  7.  
  8. $userip = $_SERVER['REMOTE_ADDR'];
  9. $time = time();
  10.  
  11. $filesize = filesize("./storage/".$validdownload[0]);
  12. $filesize = $filesize / 1048576;
  13.  
  14. if($filesize > $nolimitsize)
  15. {
  16. $newfile = "./downloader/".$userip.".mfh";
  17. $f=fopen($newfile, "w");
  18. fwrite ($f,$userip."|".$time."|");
  19. fclose($f);
  20. chmod($newfile,0777);
  21. }
  22.  
  23.  
  24. $validdownload[4] = time();
  25.  
  26. if(isset($_SESSION['logged_in']) && $_SESSION['logged_in']==md5(md5($adminpass))) {
  27. }
  28. else {
  29.  
  30. // begin separate file mod
  31. $newfile = "./files/$filecrc" . ".mfh";
  32. $f=fopen($newfile, "w");
  33. fwrite ($f,$validdownload[0]."|". $validdownload[1]."|". $validdownload[2]."|". $validdownload[3]."|". $validdownload[4]."|".($validdownload[5]+1)."|".$validdownload[6]."|".$validdownload[7]."|".$validdownload[8]."|\n");
  34. fclose($f);
  35. // end separate file mod
  36. }
  37.  
  38. $speed = $dlspeed; // in Kb
  39. header("Cache-control: private");
  40. header('Content-type: application/force-download');
  41. header('Content-Length: ' . filesize("./storage/".$validdownload[0]));
  42. header('Content-Disposition: attachment; filename="'.$validdownload[1].'"');
  43.  
  44. if (!$minfile = fopen($fileLocation. $validdownload[0], 'r')) {
  45. }
  46. while (!feof($minfile)) {
  47. echo fread($minfile, $speed * 1024);
  48. flush();
  49. sleep(1);
  50. }
  51. fclose($f); ////////////////////////// LINIA 90
  52.  
  53. ?>

///////////////////////////////

proszę o pomoc
lukaszgolder
W linii 90 zamykasz sesje pliku, ale nigdzie wcześniej nie przypisałeś do zmiennej $f pliku za pomocą funkcji fopen. Poprostu usuń tę linię.
gsmfun
Cytat(lukaszgolder @ 7.01.2010, 23:48:50 ) *
W linii 90 zamykasz sesje pliku, ale nigdzie wcześniej nie przypisałeś do zmiennej $f pliku za pomocą funkcji fopen. Poprostu usuń tę linię.



a tutaj nie jest przypisanie ?

$newfile = "./files/$filecrc" . ".mfh";
$f=fopen($newfile, "w");
lukaszgolder
No ale jest też zamknięte:

$newfile = "./files/$filecrc" . ".mfh";
$f=fopen($newfile, "w");
fwrite ($f,$validdownload[0]."|". $validdownload[1]."|". $validdownload[2]."|". $validdownload[3]."|". $validdownload[4]."|".($validdownload[5]+1)."|".$validdownload[6]."|".$validdownload[7]."|".$validdownload[8]."|\n");


->> fclose($f);
gsmfun
rzeczywiscie. sprawdze
Ociu
Panowie, proszę zacząć używać bbCode, inaczej zamknę temat i porozdaję ostrzeżenia!
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.