2

どのラジオボタンが選択されたかを呼び出す一般的な方法を見つけようとしています。問題は、 foreach ループで $_GET を使用しているときに、送信ボタンがループでエコーされることです。

ラジオボタンを表示するだけで、これを回避する方法を誰か教えてもらえますか? 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/>";
    }
}
4

2 に答える 2

6

ループ内の条件がフォームに送信ボタンを表示しない場合に追加してみてください。

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

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

それがあなたを助けることを願っています

于 2013-07-19T05:13:38.130 に答える
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"];
}
?>

配列内の既知のキーで何かをしようとしている場合、このように直接アクセスしない理由はありません。

于 2013-07-19T05:17:40.583 に答える