2012-07-05 92 views
0

我試圖設置一個html表單,允許用戶從下拉菜單中選擇一個字段,然後指定該字段的信息。例如,如果他們從菜單中選擇「名稱」,然後輸入名稱,它會發布特定的響應。是否有可能有一個下拉菜單影響返回的值

這裏的HTML的外觀:

<form action="hello.php" method="post"> 
    <select> 
    <option disabled="yes" selected="yes">Select...</option> 
    <option value="name">Name</option> 
    <option value="gender">Gender</option> 
    <option value="birthday>Birthday</option> 
    <input name="name" type="text" /> 
    <input type="submit" value="Submit"> 
    </form> 

我試圖做的是基於什麼提交的PHP代碼變化的響應。以下是PHP代碼:

$name = $_POST['name']; 
    $gender = $_POST['gender']; 
    $bday = $_POST['birthday']; 

有了迴應:

echo "Hello, $name!"; 
    echo "Your gender is $gender!"; 
    echo "Happy birthday on $birthday!"; 

取決於他們選擇什麼選項。 (我還沒有完成if/elseif/else語句,因爲我不確定它們是否受到信息接收方式的影響。)

是否可以這樣做?我知道我的代碼將永遠只能在這個例子中返回$名字,因爲

<input name="name"...> 

但我不知道這是否是可能有被下拉菜單標識的文本字段的信息。我想這可能是使用Javascript,但我從來沒有使用Javascript,並不知道如何做到這一點。 謝謝!

編輯:我找到了答案。我結束了設置

<input type="text" name="submit" /> 
在我的html代碼

,並

$submit = $_POST['submit']; 

在我的PHP代碼。現在,如果我做的東西,如

echo $submit; 

它返回我在html頁面輸入的任何東西。再次感謝!

回答

3
<form action="hello.php" method="post"> 
<select name="myselectbox"> 
<option disabled="yes" selected="yes">Select...</option> 
<option value="name">Name</option> 
<option value="gender">Gender</option> 
<option value="birthday>Birthday</option> 
<input name="name" type="text" /> 
<input type="submit" value="Submit" /> 
</form> 

然後在hello.php在文件頂部執行此操作。

var_dump($_POST); 

,應該幫助你理解HTML表單和PHP回傳表單處理程序之間的關係(在你的情況hello.php)

相關問題