Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niedziałający kalkulator.
Forum PHP.pl > Forum > Przedszkole
dexter_m
Głowię się już 2 godziny, i nie wiem o co chodzi. Co jest nie tak. Taki prosty skrypt a nie działa. Grrrrrrrr.

Treść skryptu:

  1. <html>
  2. <head>
  3. <meta http-equiv="content-language" content="pl">
  4. <title>Kalkulator</title>
  5. <style type="text/css">
  6.   input
  7.   {
  8.   border:0;
  9.   color:#107090;
  10.   }
  11.  
  12.   select
  13.   {
  14.   color:#107090;
  15.   }
  16. </style>
  17. </head>
  18.  
  19. <body bgcolor="#107090">
  20.  
  21. <center><span style="font-family:verdana,fantasty; color:#ffffcc; font-size:20">Kalkulator v0.1</span></center>
  22.  <br><br>
  23. <form action="#" method="post">
  24.   <table>
  25.   <th>
  26.     <td width="170">
  27.       <font color="#ffffff"><b>Wpisz pierwszą liczbę:</b></font>
  28.     </td>
  29.     <td>
  30.       <input type="text" size="20" value="Liczba I" onClick="value=''" name="liczba1">
  31.     </td>
  32.    </th>
  33.    </table>
  34.    <table>
  35.    <th>
  36.     <td width="170">
  37.       <font color="#ffffff"><b>Wpisz drugą liczbę:</b></font>
  38.     </td>
  39.     <td>
  40.       <input type="text" size="20" value="Liczba II" onClick="value=''" name="liczba2">
  41.     </td>
  42.    </th>
  43.    </table>
  44.    <table>
  45.    <th>
  46.     <td width="170">
  47.       <font color="#ffffff"><b>Wybierz działanie:</b></font>
  48.     </td>
  49.     <td>
  50.       <select name="dzialanie">
  51.        <option name="">Wybierz</option>
  52.        <option name="dodawanie">Dodawanie</option>
  53.        <option name="odejmowanie">Odejmowanie</option>
  54.        <option name="mnozenie">Mnożenie</option>
  55.        <option name="dzielenie">Dzielenie</option>
  56.        <option name="dzreszta">Dzielenie z resztą</option>
  57.       </select>
  58.     </td>
  59.    </th>
  60.    </table>
  61.         <br>
  62.     <table>
  63.    <th>
  64.     <td width="170">
  65.       <font color="#ffffff"><b>Oblicz wynik:</b></font>
  66.     </td>
  67.     <td>
  68.       <input type="submit" value="Oblicz wynik!" name="submit">
  69.     </td>
  70.    </th>
  71.    </table>
  72.        <table>
  73.    <th>
  74.     <td width="170">
  75.       <font color="#ffffff"><b>Resetuj pola:</b></font>
  76.     </td>
  77.     <td>
  78.       <input type="reset" src="images.jpg" value="Resetuj pola">
  79.     </td>
  80.    </th>
  81.    </table>
  82. </form>
  83.  
  84. <!--php-->
  85. <?php
  86.   //script by JURI
  87.  
  88.  if (isset($submit)) {
  89. if ($dzialanie=dodawanie) {echo $liczba1+$liczba2;}
  90. if ($dzialanie=odejmowanie) {echo $liczba1-$liczba2;}
  91. if ($dzialanie=mnozenie) {echo $liczba1*$liczba2;}
  92. if ($dzialanie=dzreszta) {echo $liczba1%$liczba2;}
  93.                      }
  94.  
  95. ?>
  96. </body>
  97.  
  98. </html>


No kurcze, co jest ine tak...
nospor
Nie dziala, bo masz zly temat tongue.gif zamykam z tego powodu. przesli na PW nową proppzycje tematu a odblokuje.
pozatym napisz czym sie objawia to nie dzialanie

edit: otwieram no i powiem ci czemu ci nie dziala smile.gif

widziale kiedy takie porownanie x=y? to jest przypisanie a nie porownanie. powinoo byc x==y smile.gif
mike
1. Powinno być tak:
  1. <td>
  2. <select name="dzialanie">
  3. <option value="</span>">Wybierz<<span style='color:blue'>/option>
  4. <option value="dodawanie">Dodawanie</option>
  5. <option value="odejmowanie">Odejmowanie</option>
  6. <option value="mnozenie">Mnożenie</option>
  7. <option value="dzielenie">Dzielenie</option>
  8. <option value="dzreszta">Dzielenie z resztą</option>
  9. </select>
  10. </td>


2. Powinno być tak:
  1. <?php
  2. // ...
  3.  
  4. if( $dzialanie == 'dodawanie' ) // we wszystkich miejscach gdzie porównujesz ciągi
  5.  
  6. //...
  7. ?>
dexter_m
Nie wiem jak wam to działa... Bo mnie nie. ;(

Mam taki kod:

  1. <html>
  2. <head>
  3. <meta http-equiv="content-language" content="pl">
  4. <title>Kalkulator</title>
  5. <style type="text/css">
  6. input
  7. {
  8. border:0;
  9. color:#107090;
  10. }
  11.  
  12. select
  13. {
  14. color:#107090;
  15. }
  16. </style>
  17. </head>
  18.  
  19. <body bgcolor="#107090">
  20.  
  21. <center><span style="font-family:verdana,fantasty; color:#ffffcc; font-size:20">Kalkulator v0.1</span></center>
  22.  <br><br>
  23. <form action="kalkulator.php" method="post">
  24. <table>
  25. <th>
  26. <td width="170">
  27. <font color="#ffffff"><b>Wpisz pierwszą liczbę:</b></font>
  28. </td>
  29. <td>
  30. <input type="text" size="20" value="Liczba I" onClick="value=''" name="liczba1">
  31. </td>
  32.  </th>
  33.  </table>
  34.  <table>
  35.  <th>
  36. <td width="170">
  37. <font color="#ffffff"><b>Wpisz drugą liczbę:</b></font>
  38. </td>
  39. <td>
  40. <input type="text" size="20" value="Liczba II" onClick="value=''" name="liczba2">
  41. </td>
  42.  </th>
  43.  </table>
  44.  <table>
  45.  <th>
  46. <td width="170">
  47. <font color="#ffffff"><b>Wybierz działanie:</b></font>
  48. </td>
  49. <td>
  50. <select name="dzialanie">
  51.  <option name="">Wybierz</option>
  52.  <option name="dodawanie">Dodawanie</option>
  53.  <option name="odejmowanie">Odejmowanie</option>
  54.  <option name="mnozenie">Mnożenie</option>
  55.  <option name="dzielenie">Dzielenie</option>
  56.  <option name="dzreszta">Dzielenie z resztą</option>
  57. </select>
  58. </td>
  59.  </th>
  60.  </table>
  61. <br>
  62. <table>
  63.  <th>
  64. <td width="170">
  65. <font color="#ffffff"><b>Oblicz wynik:</b></font>
  66. </td>
  67. <td>
  68. <input type="submit" value="Oblicz wynik!" name="submit">
  69. </td>
  70.  </th>
  71.  </table>
  72.  <table>
  73.  <th>
  74. <td width="170">
  75. <font color="#ffffff"><b>Resetuj pola:</b></font>
  76. </td>
  77. <td>
  78. <input type="reset" value="Resetuj pola">
  79. </td>
  80.  </th>
  81.  </table>
  82. </form>
  83.  
  84. <!--php-->
  85. <?php
  86. //script by JURI
  87.  
  88. if ( $dzialanie == 'dodawanie' )  {echo $liczba1+$liczba2;}
  89. if ( $dzialanie == 'odejmowanie' )  {echo $liczba1-$liczba2;}
  90. if ( $dzialanie == 'mnozenie' ) {echo $liczba1*$liczba2;}
  91. if ( $dzialanie == 'dzreszta' ) {echo $liczba1%$liczba2;}
  92. if ( $dzialanie == 'dzielenie' )  {echo $liczba1/$liczba2;}
  93.  
  94.  
  95.  
  96.  
  97. ?>
  98. </body>
  99.  
  100. </html>


i mnie nie działa. Wpisuję liczby, klikam Wylicz i zero akcji. grrr.
Lars
  1. <html>
  2. <head>
  3. <meta http-equiv="content-language" content="pl">
  4. <title>Kalkulator</title>
  5. <style type="text/css">
  6. input
  7. {
  8. border:0;
  9. color:#107090;
  10. }
  11.  
  12. select
  13. {
  14. color:#107090;
  15. }
  16. </style>
  17. </head>
  18.  
  19. <body bgcolor="#107090">
  20.  
  21. <center><span style="font-family:verdana,fantasty; color:#ffffcc; 
  22.  
  23. font-size:20">Kalkulator v0.1</span></center>
  24.  <br><br>
  25. <form action="index.php" method="post">
  26. <table>
  27. <th>
  28. <td width="170">
  29. <font color="#ffffff"><b>Wpisz pierwszą liczbę:</b></font>
  30. </td>
  31. <td>
  32. <input type="text" size="20" value="Liczba I" 
  33.  
  34. onClick="value=''" name="liczba1">
  35. </td>
  36.  </th>
  37.  </table>
  38.  <table>
  39.  <th>
  40. <td width="170">
  41. <font color="#ffffff"><b>Wpisz drugą liczbę:</b></font>
  42. </td>
  43. <td>
  44. <input type="text" size="20" value="Liczba II" 
  45.  
  46. onClick="value=''" name="liczba2">
  47. </td>
  48.  </th>
  49.  </table>
  50.  <table>
  51.  <th>
  52. <td width="170">
  53. <font color="#ffffff"><b>Wybierz działanie:</b></font>
  54. </td>
  55. <td>
  56. <select name="dzialanie">
  57.  <option name="dzialanie" value="">Wybierz</option>
  58.  <option name="dzialanie" value="dodawanie">Dodawanie</option>
  59.  <option name="dzialanie" 
  60.  
  61. value="odejmowanie">Odejmowanie</option>
  62.  <option name="dzialanie" value="mnozenie">Mnożenie</option>
  63.  <option name="dzialanie" value="dzielenie">Dzielenie</option>
  64.  <option name="dzialanie" value="dzreszta">Dzielenie z 
  65.  
  66. resztą</option>
  67. </select>
  68. </td>
  69.  </th>
  70.  </table>
  71. <br>
  72. <table>
  73.  <th>
  74. <td width="170">
  75. <font color="#ffffff"><b>Oblicz wynik:</b></font>
  76. </td>
  77. <td>
  78. <input type="submit" value="Oblicz wynik!" name="submit">
  79. </td>
  80.  </th>
  81.  </table>
  82.  <table>
  83.  <th>
  84. <td width="170">
  85. <font color="#ffffff"><b>Resetuj pola:</b></font>
  86. </td>
  87. <td>
  88. <input type="reset" value="Resetuj pola">
  89. </td>
  90.  </th>
  91.  </table>
  92. </form>
  93.  
  94. <?php
  95. //script by JURI
  96.  
  97. $dzialanie=$_POST['dzialanie'];
  98. $liczba1=$_POST['liczba1'];
  99. $liczba2=$_POST['liczba2'];
  100.  
  101. if ( $dzialanie == 'dodawanie' )  {echo $liczba1+$liczba2;}
  102. if ( $dzialanie == 'odejmowanie' )  {echo $liczba1-$liczba2;}
  103. if ( $dzialanie == 'mnozenie' ) {echo $liczba1*$liczba2;}
  104. if ( $dzialanie == 'dzreszta' ) {echo $liczba1%$liczba2;}
  105. if ( $dzialanie == 'dzielenie' )  {echo $liczba1/$liczba2;}
  106. ?>
  107. </body>
  108.  
  109. </html>


1. register_globals" title="Zobacz w manualu php" target="_manual
2. form

1. używaj tablic superglobalnych
2. każde option musi mieć name selecta a te 'dodawanie' / 'odejmowanie' to ma być value
dexter_m
No działa. Dzięki wielkie. Ale register_globals to można wyłączyć/włączyć i po kołopocie winksmiley.jpg Pozdro i jeszcze raz dzięki! rolleyes.gif
Lars
Cytat(dexter_m @ 2005-10-15 19:03:26)
No działa. Dzięki wielkie. Ale register_globals to można wyłączyć/włączyć i po kołopocie winksmiley.jpg Pozdro i jeszcze raz dzięki! rolleyes.gif

no tak, ale register globals = on niesie za sobą niebezpieczeństwo guitar.gif
dexter_m
masz racje, dlatego najlepiej pisać :

$var=$_POST['var'];

Jeszcze raz dzięki. winksmiley.jpg
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.