-2

switch ステートメントを使用して、特定の単語をテキスト ボックスに入力すると、その車の利用可能なモデルが表示されるようにしようとしています。

例えば

ユーザーが「フォルクスワーゲン」と入力した場合、「利用可能なモデルはビートルとポロです」と表示されます。

しかし、何らかの理由で機能していない理由を誰かに提案できますか?

ここに私がこれまでに持っているコードがあります、

<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> 

編集:

私は今、このスイッチステートメントをドロップダウンボックスで使用しようとしています.

これは、動作中のスイッチと動作中のドロップ ボックスのコードです。

<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 に答える