2017-07-19 142 views
0

我有一個html選項,它包含我們所有四個辦公室的值或全部文本。如果用戶選擇全部,我想回顯「所有辦公室」,但如果用戶選擇了特定的辦公室,我想回顯該號碼。我的問題是,當我運行下面的語法時,All仍然是All而不是All Offices。更改基於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表單。 Google如何在PHP中提交html表單提交。 – TurtleTread

+0

這是完整的代碼嗎?或者一個片段?或多個片段放在一起? – ThisGuyHasTwoThumbs

回答

2

您從未初始化$officename變量,所以它應該爲空。因此,$officename != 'All'永遠不會是真的,所以$officename = $_POST['officename'];將永遠執行?

我想你想要什麼,而不是是這樣的:

$officename = $_POST['officename']; 

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

echo $officename; 
0

我假設你想「所有」來自於<select>的值,它被命名爲「辦公室」。因此,您需要將該值分配給變量,然後才能將其用於比較。請注意,select是「office」而不是「officename」,因此它是「辦公室」,您需要在$_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;