2016-03-18 20 views
-2
for ($i = 0; $i < count($name); $i++) 
    { 
    //some output ommited 

     <td><input type='submit' value='Purchase' name='$name[$i]'></td></tr>"; 
    } 

$名今すぐ[$ i]を= NAME1、NAME2、NAME3、NAME4、name5、name6

ボタンがクリックされると、この私が表示しなければならないものです。

if (isset($_REQUEST['name1'])) {echo "name1 selected";} 
if (isset($_REQUEST['name2'])) {echo "name2 selected";} 
if (isset($_REQUEST['name3'])) {echo "name3 selected";} 
if (isset($_REQUEST['name4'])) {echo "name4 selected";} 
if (isset($_REQUEST['name5'])) {echo "name5 selected";} 
if (isset($_REQUEST['name6'])) {echo "name6 selected";} 

任意の名前を有効または無効にするオプションがあります。 name3が無効の場合、$iの順序/順序が変更され、必要なパラメータw.r.t $iを表示できません。私はNAME3を無効にして、表示したいexmapleについては

if (isset($_REQUEST['name4'])) { 
    echo "$name[4] selected, kind is $kind[4] kind and type is $type[4]"; 
} 

NAME3無効で、NAME4はname5

2からの値が表示されます:

でリクエストの値を取得する方法$ name [$ i]

for loop() { 
    if (isset($_REQUEST['$name[$i]'])) {echo "name1 selected";} 
} 

値を取得するにはf $iなので、注文が乱れても、私は$iがどの値を持っているのか知っているはずです。

+1

、*右サム?* –

+0

フレッド-II- @ ,,右、厥の擬似コード。 –

答えて

1

まずあなたが一意の名前を取得するためにname$iをCONCATする必要があります。

for ($i = 0; $i < count($name); $i++) 
{ 
    echo "<td><input type='submit' value='Purchase' name='$name . $i'></td></tr>"; 
} 

$nameが "名前" であるならば、あなたは "NAME1"、 "名前2"、 "NAME3" でしょう、など

次に、print_r($_REQUEST)を入力してください。提出されたアイテムを見る。

あなたは設定されているアイテムのかを確認するループのための必要はありませんが、REQUEST配列をループしたい場合は、このような何か行うことができます:

foreach($_REQUEST as $post_var) 
{ 
    if('name' == substr($post_var, 0, 4)) 
    { 
     echo $post_var . ' '; 
    } 
} 

結果:

を擬似コードだ

名1名2 NAME3

+0

値は、コード –

+0

に記載されている通り正しく渡されます(isset($ _REQUEST ['name1'])){echo "name1 selected";} ....これを$ name ..if(isset –

+0

A.あなたはそれと2を指定したことはありませんでした。次に何を求めていますか? –

関連する問題