Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak temu zaradzić
Forum PHP.pl > Forum > Przedszkole
juntek
Korzystam z Wampserver 2.0. Robię wszystko tak jak w książce. Próbuję skompilować poniższy kod, ale wyskakuje mi następujący błąd:
Warning: flock() expects parameter 1 to be resource, boolean given in C:\wamp\www\przetworzzamowienie.php on line 8

  1. $ciagwyjsciowy = $data."\t".$iloscopon." opon \t".$iloscoleju." butelek oleju\t"
  2. .$iloscswiec." swiec zapłonowych\t".$wartosc
  3. ."PLN\t". $adres."\n";
  4.  
  5. // otwarcie pliku w celu dopisywania
  6. @ $wp = fopen("$DOCUMENT_ROOT/../zamowienia/zamowienia.txt", 'ab');
  7.  
  8. flock($wp, LOCK_EX);
  9.  
  10. if (!$wp) {
  11. echo "<p><strong> Zamówienie Państwa nie może zostać przyjęte w tej chwili.
  12. Proszę spróbować później.</strong></p></body></html>";
  13. }
  14.  
  15. fwrite($wp, $ciagwyjsciowy, strlen($ciagwyjsciowy));
  16. flock($wp, LOCK_UN);
  17. fclose($wp);
  18.  
  19. echo "<p>Zamówienie zapisane.</p>";


(Przedstawiłem tutaj tylko fragment kodu, dlatego zmieniłem z "...on line 67" na "...on line 8")
Z góry dziękuję za wszelką pomoc
BlackDante
Cytat
Return Values

Returns a file pointer resource on success, or FALSE on error.



Cytując manuala i patrząc na Twój błąd od razu widać że skrypt nie może otworzyć pliku. Po pierwsze sprawdź ścieżkę a po drugie nie wydaje mi się aby funkcja fopen() była dobrze wywołana... http://www.php.net/manual/en/function.fopen.php tutaj znajdziesz wszystkie wartości jakie można podać w drugim parametrze i co one oznaczają.
CuteOne
@ przed funkcja/zmienną zagłusza ewentualne błędy, postaraj się jej nie używać. Do zapewnić brak błędów w twoim przypadku użyj sprawdzania czy plik istnieje i ma odpowiednie uprawnienia:

  1. if(file_exists('plik.txt') && is_readable('plik.txt')) {
  2.  
  3. $wp = fopen('plik.txt', 'a');
  4. flock($wp, LOCK_EX);
  5.  
  6. //...
  7. }
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.