Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z funckją flock()
Forum PHP.pl > Forum > Przedszkole
Narudura
Witam! Raczkuję w PHP staram się uczyć, ale niestety nie potrafię poradzić sobie z pewnym błędem
oto kod.


  1. <?php
  2. $iloscopon = $_POST['iloscopon'];
  3. $iloscoleju = $_POST['iloscoleju'];
  4. $iloscswiec = $_POST['iloscswiec'];
  5. $data=date('H:i, jS F Y');
  6. $adres = $_POST['adres'];
  7. $ilosc = 0;
  8. $ilosc = $iloscopon + $iloscoleju + $iloscswiec;
  9. $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
  10. define('CENAOPON', 100);
  11. define('CENAOLEJU', 10);
  12. define('CENASWIEC', 4);
  13.  
  14. $wartosc = $iloscopon * CENAOPON
  15. + $iloscoleju * CENAOLEJU
  16. + $iloscswiec * CENASWIEC;
  17.  
  18. if ($ilosc == 0){
  19. echo 'Nie złożono zamówienia!';
  20. }
  21. /*elseif ($adres = !string){
  22. echo 'Nie podałeś adresu!';
  23. exit;
  24. }*/
  25. else {
  26.  
  27. echo '<p>Zamówienie przyjęte o '.$data.'</p><br>';
  28.  
  29. echo 'Ilość zamówionych części: '.$ilosc.'<br>';
  30. echo $iloscopon.' Opon<br>';
  31. echo $iloscoleju.' Butelek oleju <br>';
  32. echo $iloscswiec.' Świec<br>';
  33. echo 'Adres: '.$adres;
  34.  
  35. switch($jak){
  36. case "a" :
  37. echo '<p>Stały klient.</p>';
  38. break;
  39. case "b" :
  40. echo '<p>Reklama TV.</p>';
  41. break;
  42. case "c" :
  43. echo '<p>Książka Tel.</p>';
  44. break;
  45. case "d" :
  46. echo '<p>Znajomy.</p>';
  47. break;
  48. default :
  49. echo '<p>Źródło nienznane.</p>';
  50. break;
  51. }
  52. echo 'Cena Netto: '.number_format($wartosc, 2).' PLN</br>';
  53.  
  54. $stawkavat = 0.23;
  55. $wartosc = $wartosc * (1 + $stawkavat);
  56.  
  57. echo 'Cena Brutto: '.number_format($wartosc, 2).' PLN<br>';
  58. if($ilosc <= 10){
  59. $znizka = 0;
  60. echo 'Brak zniżki!';
  61. }
  62. elseif($ilosc > 10){
  63. $znizka = 0.1;
  64. $wartosc = $wartosc / (1 + $znizka);
  65. echo 'Zamówiłeś więcej niż 10 szt. Zniżka 10%!<br>';
  66. echo 'Cena po zniżce: '.number_format($wartosc, 2).' PLN</br>';
  67. }
  68. }
  69.  
  70. $ciagwyjsciowy = $data."\t".$iloscopon." Opon \t".$iloscoleju." Oleju \t".$iloscswiec." Świec \t".$wartosc." PLN \t".$adres."\n";
  71.  
  72.  
  73. @ $wp = fopen("$DOCUMENT_ROOT/../zamowienia/zamowienia.txt".'ab');
  74.  
  75. flock($wp, LOCK_EX);
  76.  
  77. if(!$wp) {
  78. echo "<p><strong>Nie można złożyć zamówienia. Proszę spróbować Póżniej.</p></strong></body><html>";
  79. }
  80.  
  81. fwrite($wp, $ciagwyjsciowy, strlen($ciagwyjsciowy));
  82. flock($wp, LOCK_UN);
  83. fclose($wp);
  84.  
  85. echo 'Zamówienie zapisane';
  86.  
  87.  
  88.  
  89.  
  90. ?>



na stronie wyskakuje błąd

Warning: flock() expects parameter 1 to be resource, boolean given in C:\Program Files\WebServ\httpd\kurs\przetworzzamowienie.php on line 76

Jakieś pomysły?
amii
Najprawdopodobniej tutaj:
  1. @ $wp = fopen("$DOCUMENT_ROOT/../zamowienia/zamowienia.txt".'ab');

jest podana zła ścieżka albo brak uprawnień, nie widzisz tego bo masz tłumienie błędów, usuń małpę i zobacz komunikat błędu
Narudura
Warning: fopen() expects at least 2 parameters, 1 given in C:\Program Files\WebServ\httpd\kurs\przetworzzamowienie.php on line 74

Warning: flock() expects parameter 1 to be resource, boolean given in C:\Program Files\WebServ\httpd\kurs\przetworzzamowienie.php on line 76
melkorm
Kropka zamiast przecinka, boże ... .
Narudura
Słuchaj... jeśli cię irytują błędy początkujących to nie wchodź tu i nie staraj się "pomóc".
Swoją arogancją nie udowadniasz swojego skilla w temacie, a tylko denerwujesz pozostałych.

Nie łatwo zauważyć taki błąd, a tym bardziej gdy "raczkujesz" w programowaniu.

Jak sama nazwa wskazuje jest to przedszkole. Więc albo przyzwyczaj się do śmiesznych błędów czy braku obeznania młodego programisty, albo wypierdalaj na plac zabaw dla dorosłych.


Sherlock się znalazł...
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.