2013-07-19 99 views
2

我試圖找到一種通用的方法來調用哪個單選按鈕選擇。 問題是,在我的foreach循環中使用$ _GET時,同時提交按鈕是循環中的回聲。PHP的形式,多個單選按鈕

誰能告訴我如何避免這一點,所以我只顯示了單選按鈕? 我不知道的方式,因爲的foreach只接受數組,據我所知

這裏是我的代碼

<form action="" method="get"> 
<input type="radio" name="one" value="One1" />One1<br/> 
<input type="radio" name="one" value="One2" />One2 <br/> 
<input type="radio" name="one" value="One3" />One3<br/> 
<input type="submit" name="submit"/> <br/> 
</form> 



if(isset($_GET['submit'])){ 
    foreach($_GET as $key=>$val){ 
     echo "$val <br/>"; 
    } 
} 
+0

$ _GET [「one」]應該包含被選擇的值 – Orangepill

+0

@Orangepill:不能在foreach中使用它,因爲它只接受一個數組 – xhallix

+0

您不需要首先使用'foreach' 。 – Barmar

回答

6

只是嘗試添加如果您的循環條件將不會顯示在您的表單提交按鈕。

if(isset($_GET['submit'])){ 

    foreach($_GET as $key=>$val){ 
     if($key != 'submit') 
     echo "$val <br/>"; 
    } 
} 

希望它會幫助你

1

你並不需要一個循環只是這樣做。

<form action="" method="get"> 
<input type="radio" name="one" value="One1" />One1<br/> 
<input type="radio" name="one" value="One2" />One2 <br/> 
<input type="radio" name="one" value="One3" />One3<br/> 
<input type="submit" name="submit"/> <br/> 
</form> 


<?php 
if(isset($_GET['one'])){ 
    echo "You submitted ".$_GET["one"]; 
} 
?> 

當你試圖做一些事情在一個陣列已知關鍵有沒有理由不直接訪問這個樣子。