Как обработать & lt; option & gt; в & lt; форме & gt; использование переполнения стека

<form action="abc.php" method="post">
Type:
<select name="alltypes">
<option value="">select...</option>
<option value="grass">Grass</option>
<option value="fire">Fire</option>
<option value="water">Water</option>
</select>
<input type="submit" value="click me"/>
</form>

Это мой код Теперь я хочу направить пользователя на три разных URL-адреса в зависимости от выбранной опции.
теперь рассмотрим этот файл abc.php

<?php
$grass = $_POST["grass"];
$fire = $_POST["fire"];
$water= $_POST["water"];

switch($_POST["clickme"])
{
case "grass" :
echo "grass";
case "fire" :
echo "fire";
case "water":
echo "water";
default:
echo "select something";
}
?>

Какой бы вариант я ни выбрал, я получаю «выбрать что-то» из случая по умолчанию. где я ошибся?

-3

Решение

В вашем abc-файле вам сначала нужно выяснить, что пользователь нажал, обычно это делается с помощью если или переключатель Утверждение.

Затем вам нужно перенаправить пользователя. Вы можете сделать это с заголовок Метод.

Как некоторые ребята уже заявили в своих комментариях. В этом сообществе вы найдете людей, которые любят помогать, но никто не собирается писать вам код, без вашего участия!

Посмотри Вот!

ОБНОВИТЬ:

switch($_POST["clickme"])
{
case "grass" :
echo "grass";
break;
case "fire" :
echo "fire";
break;
//other cases
}

Почему бы вам не сделать быстрое исследование в сети? http://php.net/manual/en/control-structures.switch.php

0

Другие решения

в вашем HTML, когда вы используете теги, чем имя будет использоваться в качестве ссылки в $ _POST, но вы используете $ _POST [‘grass’] $ _POST [‘fire’] $ _POST [‘water’], что неверно, вы можете используйте значение параметра в качестве имени, так что вы должны сделать это так

ваш HTML-код должен быть таким

  <form action="abc.php" method="post">
Type:
<select name="alltypes">
<option value="">select...</option>
<option value="grass">Grass</option>
<option value="fire">Fire</option>
<option value="water">Water</option>
</select>
<input type="submit" name="clickme" value="click me"/>

 <?php
if(isset($_POST['clickme'])
{
switch($_POST["alltypes"])
{
case "grass" :
echo "grass";
break;
case "fire" :
echo "fire";
break;
case "water":
echo "water";
break;
default:
echo "select something";
break;
}
}
?>
0

По вопросам рекламы [email protected]