2016-11-13 5 views
0

データを使用できるように、さまざまな名前を(ループで作成しているように)どのように異なる名前で与えることができますか? name = \ "type \"を変更して、名前の中に$ xを含めるようにして、毎回異なるようにすることはできますか?PHPでループ内のhtmlオブジェクトに異なる名前を付ける

For($x=0; $x<=$noQuestions-1; $x++){ 

    echo "<table>"; 
    echo "<tr>"."Question ".($x+1).": ".$question[$x]."</tr>"; 
    echo "<form method=\"post\">"; 
    echo "<Select class=\"form-control\" type=\"text\" name=\"type\" required>"; 
    echo "<option value=\"1\">".$optionData[$x][0]."</option>"; 
    echo "<option value=\"2\">".$optionData[$x][1]."</option>"; 
    echo "<option value=\"3\">".$optionData[$x][2]."</option>"; 
    echo "<option value=\"4\">".$optionData[$x][3]."</option>"; 
    echo "</select>"; 
    echo "</form>"; 
    echo "</table>"; 
} 
+0

試しましたか?何が問題なのですか? – Dekel

答えて

1

あなたは、単にこのような名前で変数$ xに連結することができます:

echo "<Select class=\"form-control\" type=\"text\" name=\"type".$x."\" required>"; 

編集:

$type = "dropdown"; 
for($x=0; $x<=$noQuestions-1; $x++) 
{ 
     echo "<table>"; 
     echo "<tr>"."Question ".($x+1).": ".$question[$x]."</tr>"; 
     echo "<form method=\"post\">"; 
     echo "<Select class=\"form-control\" type=\"text\" name=\"".$type.$x."\" required>"; 
     echo "<option value=\"1\">".$optionData[$x][0]."</option>"; 
     echo "<option value=\"2\">".$optionData[$x][1]."</option>"; 
     echo "<option value=\"3\">".$optionData[$x][2]."</option>"; 
     echo "<option value=\"4\">".$optionData[$x][3]."</option>"; 
     echo "</select>"; echo "</form>"; 
     echo "</table>"; 

} 
+0

私はできるそれをエコーするとき何らかの理由で$ type0を取得します。 –

+0

if(isset($ _REQUEST ['submit'])){ 抽出($ _要求); \t \t \t \t($ _POST [ 'dropdown0'] == "1"){ \t \t \tエコー "1" であれば、 \t \t} elseif($ _POST ['dropdown0'] == "2"){ \t \t \t echo "2"; \t \t} elseif($ _POST ['dropdown0'] == "3"){ \t \t \t echo "3"; \t \t} elseif($ _POST ['dropdown0'] == "4"){ \t \t \t echo "4"; \t \t} \t \t \t \t IF($ _POST [ 'dropdown1'] == "1"){ \t \t \tが "1" のエコー。 \t \t} elseif($ _POST ['dropdown1'] == "2"){ \t \t \t echo "2"; \t \t} elseif($ _POST ['dropdown1'] == "3"){ \t \t \t echo "3"; \t \t} elseif($ _POST ['dropdown1'] == "4"){ \t \t \t echo "4"; \t \t \t} –

+0

あなたは正確に何をしようとしていますか...丁寧に教えてください... ...私が与えた答えを試しました。タイプ0、タイプ1などが来ています。 –

0

一つの簡単な解決策は、例えば次のように名前で$ xを追加するには、次のようになります。

echo "< select class=\"form-control\" type=\"text\" name=\"type-$x\" required>";

+0

どのように私は通常のPHPで変数をエコーですか?それは "echo $ type-0"でしょうか? –

+0

フィールドの送信方法によって異なります。あなたのフォームメソッドが "post"の場合は、フォームメソッドが "get"で$ _GET ["type-0"]を使用する場合は$ _POST ["type-0"]変数をエコーし​​ます – sldeb

関連する問題