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 :: Версия для печати :: Обработка HTML-опроса
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » Обработка HTML-опроса

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

1. Xakerok - 22 Августа, 2012 - 16:23:40 - перейти к сообщению
И так, вот моя форма:
CODE (html):
скопировать код в буфер обмена
  1. <form action="/untitled0.php" method="post">
  2. <select size="1" name="">
  3. <option value="o_attack" class="atack1" name="o_attack">Обычная атака</option>
  4. <option value="s_attack" class="atack2" name="s_attack">Спец атака</option>
  5. <option value="mantra" class="atack3" name="mantra">Мантра</option>
  6. <option value="s_zakl" class="atack4" name="s_zakl">Заклинание</option>
  7. </select>
  8. <input type="submit" value="Атаковать">
  9. </form>

Код обработчика:
PHP:
скопировать код в буфер обмена
  1. <?
  2. if  (isset($_POST['o_attack']))
  3. {
  4.  
  5.   $attack2 = $_POST['o_attack'];
  6.  
  7.   if ($attack2 == '') unset($name);
  8. }
  9. $life=100;
  10. if($attack2)
  11. {
  12. $life= $life-10;
  13. }
  14. else
  15. {
  16. echo "<font color=red>Атака прошла не успешно :( <br> ";
  17. }
  18. echo " жизни противника-$life%";
  19. ?>

А проблемка та вся в том, что данные из тега <option> не записываются в переменную....
(Добавление)
Xakerok пишет:
И так, вот моя форма:
CODE (html):
скопировать код в буфер обмена
  1. <form action="/untitled0.php" method="post">
  2. <select size="1" name="">
  3. <option value="o_attack" class="atack1" name="o_attack">Обычная атака</option>
  4. <option value="s_attack" class="atack2" name="s_attack">Спец атака</option>
  5. <option value="mantra" class="atack3" name="mantra">Мантра</option>
  6. <option value="s_zakl" class="atack4" name="s_zakl">Заклинание</option>
  7. </select>
  8. <input type="submit" value="Атаковать">
  9. </form>

Код обработчика:
PHP:
скопировать код в буфер обмена
  1. <?
  2. if  (isset($_POST['o_attack']))
  3. {
  4.  
  5.   $attack2 = $_POST['o_attack'];
  6.  
  7.   if ($attack2 == '') unset($name);
  8. }
  9. $life=100;
  10. if($attack2)
  11. {
  12. $life= $life-10;
  13. }
  14. else
  15. {
  16. echo "<font color=red>Атака прошла не успешно :( <br> ";
  17. }
  18. echo " жизни противника-$life%";
  19. ?>

А проблемка та вся в том, что данные из тега <option> не записываются в переменную.... Пробовал использовать даже так:

Вероятнее такой вид привязки подходит только к данным которые находятся в теге
CODE (html):
скопировать код в буфер обмена
  1. <input>
, а для данных тега
CODE (html):
скопировать код в буфер обмена
  1. <option>
нужна какая-то особенная!?!!?
(Добавление)
Вообщем мне нужно, чтобы обработчик записывал "Основная атака" если выбрана основная атака в форме! А записывал в переменную - $attack1 .. Никак не могу разобраться(
(Добавление)
А еще чтобы если выбрана 1 атака, то из переменной $life отнималось 10 "жизней", если 2 атака, то из переменной отнималось 20 "жизней", а если 4 атака то из переменной отнималось "14" жизней допустим... И еще, можно сделать так, чтобы если часто использовать одну и ту же грубо говоря "атаку" (4-5 раз) то выводился текст: "Вы слишком часто используете этот прием! Попробуйте использовать другой"
2. AlexAnder - 22 Августа, 2012 - 17:05:31 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <form action="" method="POST">
  2. <select onchange="submit()" name="sel">
  3. <option value="val1">1</option>
  4. <option value="val2">2</option>
  5. <option value="val3">3</option>
  6. </select>
  7. </form>
  8. <?PHP
  9. if(isset($_POST['sel'])) {
  10. $sel = $_POST['sel'];
  11. //echo $sel;
  12. echo '<script>alert("'.$sel.'")</script>';
  13. }
  14. ?>

 

Powered by ExBB FM 1.0 RC1