2017-07-19 9 views
0

私は4つのオフィスすべての値またはテキストAllを保持するhtml selectを持っています。ユーザーが「すべて」を選択した場合、「すべてのオフィス」をエコーし​​ますが、ユーザーが特定のオフィスを選択した場合は、その番号をエコーし​​ます。私の問題は、以下の構文を実行すると、AllはAll Officeの代わりにAllのままであることです。PHP変数に基づくオフ選択を変更する

これを間違った方法で設定しましたか?

Display Data For Which Office: 
<select name="office"> 
    <option value="All">All...</option> 
    <option value="one">One Quarter</option> 
    <option value="two">Two Quarter</option> 
    <option value="three">Three Quarter</option> 
    <option value="four">Four Quarter</option> 
</select> 


<?php 
    if ($officename != 'All') { 
     $officename = $_POST['officename']; 
    } else { 
     $officename = "All Offices"; 
    } 

    echo $officename; 
?> 
+0

あなたはまず、HTMLフォームを作成する必要があります。 PHPのhtmlフォーム提出方法 – TurtleTread

+0

これは完全なコードですか?またはスニペット?または、複数のスニペットをまとめる? – ThisGuyHasTwoThumbs

答えて

2

$officename変数は決して初期化されていないので、nullにする必要があります。その結果、$officename != 'All'は常に真ではないので、$officename = $_POST['officename'];は常に実行されますか?私はあなたの代わりに何をしたいと思います

のようなものです:

$officename = $_POST['officename']; 

if ($officename == 'All') { 
    $officename = "All Offices"; 
} 

echo $officename; 
0

私は、あなたが「オフィス」という名前が付けられている、<select>の値から来て、「すべて」を希望していると仮定します。したがって、その値を変数に代入してから比較する必要があります。 selectは "officename"ではなく "office"という名前なので、探す必要がある "office"は$_POSTです。

$officeValue = $_POST['office']; 

if ($officeValue == 'All') { 
    $officename = "All Offices"; 
} 
else { 
    $officename = $_POST["officename"]; //I assume this is some other field in the form which you haven't shown, but which contains a human-readable office name. 
} 

echo $officename; 
関連する問題