Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Почему скрипт начинает работать при простом обновлении страницы?
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Почему скрипт начинает работать при простом обновлении страницы?

Страниц (1): [1]
 

1. foxlite - 14 Декабря, 2018 - 21:56:22 - перейти к сообщению
Почему скрипт выполняется при простом обновлении страницы? хотя должен при нажатии на кнопку. Помогите пожалуйста просто только осваиваю php
PHP:
скопировать код в буфер обмена
  1.   <ol>
  2.     <form id="frm" method="post"  >
  3.     <li><input name="ставка" placeholder="введите ставку"></li>
  4. <div id="nop">    <li><input type="submit" name="button1" value="меньше">
  5.                             <input type="submit" name="button2" value="больше"></li></div>
  6.     </form>
  7.     </ol>
  8.    
  9.      <?PHP
  10.      
  11.                  //рандом
  12.                $run= rand(1, 3);
  13.              
  14.     ?>
  15.    
  16.    <?PHP
  17.    
  18.    $stavka=$_POST['ставка'];
  19. if(isset($_POST['button1'])) {
  20.     if ($run==2) {
  21.    $res=1;
  22.    $win = $stavka * 2;
  23.    echo "вы выиграли $win монет";
  24.    
  25. } else {
  26.    $res= 0;
  27.    echo "вы проиграли";
  28.    
  29. }
  30. } elseif(isset($_POST['button2'])) {
  31.         if ($run==2) {
  32.    $res=1;
  33.        $win = $stavka * 2;
  34.        echo "вы выиграли $win монет";
  35. } else {
  36.    $res= 0;
  37.    echo "вы проиграли";
  38. }
  39. }
  40. ?>
  41. </div>
  42.  
2. Vladimir Kheifets - 17 Декабря, 2018 - 11:25:39 - перейти к сообщению
foxlite пишет:
Почему скрипт выполняется при простом обновлении страницы? хотя должен при нажатии на кнопку. Помогите пожалуйста просто только осваиваю php
PHP:
скопировать код в буфер обмена
  1.   <ol>
  2.     <form id="frm" method="post"  >
  3.     <li><input name="ставка" placeholder="введите ставку"></li>
  4. <div id="nop">    <li><input type="submit" name="button1" value="меньше">
  5.                             <input type="submit" name="button2" value="больше"></li></div>
  6.     </form>
  7.     </ol>
  8.    
  9.      <?PHP
  10.      
  11.                  //рандом
  12.                $run= rand(1, 3);
  13.              
  14.     ?>
  15.    
  16.    <?PHP
  17.    
  18.    $stavka=$_POST['ставка'];
  19. if(isset($_POST['button1'])) {
  20.     if ($run==2) {
  21.    $res=1;
  22.    $win = $stavka * 2;
  23.    echo "вы выиграли $win монет";
  24.    
  25. } else {
  26.    $res= 0;
  27.    echo "вы проиграли";
  28.    
  29. }
  30. } elseif(isset($_POST['button2'])) {
  31.         if ($run==2) {
  32.    $res=1;
  33.        $win = $stavka * 2;
  34.        echo "вы выиграли $win монет";
  35. } else {
  36.    $res= 0;
  37.    echo "вы проиграли";
  38. }
  39. }
  40. ?>
  41. </div>
  42.  

Добрый день!
Ваш скрипт выполняется при простом обновлении страницы потому, что данные формы сохраняются в кэше браузера.
Вам нужно поставить проверку того, что ставка сделана и того, что задано новая комбинация значения ставки и нажатия кноки больше или меньше.
Попробуйте так:
Спойлер (Отобразить)
Удачи!
3. foxlite - 17 Декабря, 2018 - 12:03:33 - перейти к сообщению
Большое спасибо вы мне очень помогли!

 

Powered by ExBB FM 1.0 RC1