-2

我正在尝试使用 switch 语句来制作它,以便在将特定单词输入到文本框中时,它将显示该汽车的可用型号

例如

如果用户输入“Volkswagen”,则应显示“可用的车型是 Beetle 和 Polo”

但是由于某种原因它不起作用,任何人都可以向我建议为什么?

这是我到目前为止的代码,

<form action="switch.php" method="post">

    <input type="text" name="cars" id="cars" />
       <input type="submit" /> 
<?php
$i = $_POST;
?>

<?php
switch ($i) {
    case "Volkswagen":
        echo "The available models are Beetle and Polo";
        break;
    case "Renault":
        echo "The Available models are Megane and Clio";
        break;
    case "Land Rover":
        echo "The Available models are Range Rover Sport and Defender";
        break;
}
?>
</form> 

编辑:

我现在有点卡住了,我正在尝试将此 switch 语句与下拉框一起使用,并且不太确定如果有人可以帮助我使它们一起工作,我该如何使它们一起工作,那就太好了

这是我用于工作开关和工作投递箱的代码。

<form action="">
<select name="cars">
<option value="Volkswagen">Volkswagen</option>
<option value="Renault">Renault</option>
<option value="Land Rover">Land Rover</option>
</select>


<p>
<?php
switch($_POST['cars']) {
    case "Volkswagen":
        echo "The available models are Beetle and Polo";
        break;
    case "Renault":
        echo "The Available models are Megane and Clio";
        break; 
    case "Land Rover":
        echo "The Available models are Range Rover Sport and Defender";
        break;
}
?>
</p>
</form>
</center>
4

1 回答 1

6

$_POST是一个数组。这不是您可以与字符串进行比较的东西。PHP 会将数组转换为文字 word Array。由于您没有该词的大小写,因此您根本没有匹配项。

表单值作为 $_POST 数组的元素提交。你应该做

switch($_POST['cars']) {
   ...
}

反而

于 2013-08-28T14:31:43.960 回答