Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Dlaczego wpisanie 0 w pole formularza nie wyświela wyniku programu?
Forum PHP.pl > Forum > Przedszkole
mkfredi
Witam problem pojawia się w tedy gdy w pole formularza wpiszę się 0 , wtedy program nie zwraca wyniku na końcu programu ,liczby większe od 0 działają poprawnie. Program ma na celu pobranie 2 liczb od użytkownika z których program wykona 4 działania oraz wpisanie wyników które będą porównane z wynikami wprowadzonymi przez użytkownika . Na końcu program porónuje wynki i podaje liczbę poprawnych odpowiedzi .
.Jak rozwiozać ten problem.
  1. <html>
  2. <head>
  3. <title>Kalkulator</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. </head>
  6. <body>
  7. <form method="POST" action="">
  8.  
  9. <h2><p>Witaj w Quizie o kalkulatorze</p></h2>
  10. <form action="zad2.php" method="POST">
  11. <p>Podaj swoje imie = <input type="text" size="10" name="imie"></p>
  12. <p> Witaj - działaj zgodnie z poleceniami programu</p>
  13. <p>Podaj liczbe nr1 = <input size="10" name="a"></p>
  14. <p>Podaj liczbe nr2 = <input size="10" name="b"></p>
  15.  
  16. <br>Wykonaj obliczenia i podaj wartosci:<br>
  17.  
  18. Oblicz dodawanie=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="l1"><br>
  19. Oblicz odejmowanie=&nbsp;&nbsp;<input name="l2"><br>
  20. Oblicz mnożenie=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="l3"><br>
  21. Oblicz dzielenie=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="l4"><br>
  22.  
  23. <br><input type="submit" name="licz" value=" Sprawdz poprawnosc">
  24. </form>
  25.  
  26. <?php
  27. if (isset($_POST['licz']))
  28. {
  29. $imie=$_POST['imie'];
  30. $a=floatval($_POST['a']);
  31. $b=floatval($_POST['b']);
  32. $dod=floatval($_POST['l1']);
  33. $min=floatval($_POST['l2']);
  34. $mno=floatval($_POST['l3']);
  35. $dziel=floatval($_POST['l4']);
  36.  
  37. echo "<hr>";
  38. echo "Witaj, <b>$imie </b> - Twoje wyniki<br>";
  39. if ($a&&$b) {
  40. echo "<b>Dane: </b><br>&nbsp;liczba nr1 to = $a<br>";
  41. echo "&nbsp;liczba nr2 to = $b<br>";
  42. $d1=$a+$b;
  43. $d2=$a-$b;
  44. $d3=$a*$b;
  45. $d4=$a/$b;
  46.  
  47. echo "<b>Wyniki:</b><br><br>";
  48. echo "&nbsp;dodawanie=&nbsp;<input size=\"6\" value=$d1>, Twoj wynik=<input size=\"6\" value=$l1><br>";
  49. echo "&nbsp;odejmowanie=&nbsp;<input size=\"6\" value=$d2>, Twoj wynik=<input size=\"6\" value=$l2><br>";
  50. echo "&nbsp;mnożenie=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input size=\"6\" value=$d3>, Twoj wynik=<input size=\"6\" value=$l3><br>";
  51.  
  52. echo "&nbsp;dzielenie=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input size =\"6\" value=$d4>, Twój wynik=<input size=\"6\" value=$l4><br>";
  53.  
  54. $wynik=5;
  55. if ($d1!=$dod) $wynik--;
  56. if ($d2!=$min) $wynik--;
  57. if ($d3!=$mno) $wynik--;
  58. if ($d4!=$dziel) $wynik--;
  59.  
  60. $wynik2=2;
  61. if($wynik>=3)
  62. {
  63. echo "<font color=\"#00FF00\" size=\"5\">"."<b> OTRZYMAŁEŚ : $wynik</b>"; echo "<font color=\"#00FF00\" size=\"5\">"."<b> punkty/ów z 5 </b>";
  64. }
  65. else
  66. {
  67. echo "<font color=\"#FA0505\" size=\"5\">"."<b>Masz mało punktów dostajesz: = $wynik2</b>";
  68. }
  69. };
  70. }
  71. ?>
  72. <br>
  73. <center><a href=http://localhost/~programy/start.php> idz do menu </a></center>
  74.  
  75. </body>
  76. </html>
toffiak
Nigdzie nie sprawdzasz czy druga liczba jest zerem gdy wybrano dzielenie.
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.