2013-11-25 40 views
0

看來我無法找到解決我的問題的方法。我試圖尋找它,但給我的結果在解決方案中包含JavaScript。我想要的只是使用PHP。 所以我的問題是給動態生成的文本框唯一的名稱,以便我可以稍後檢索它們的值。動態給出文本框的名稱屬性值

這裏是我的代碼:

<form name="zodiac_quiz" id="zodiac_quiz" method="post" action="<?php $_SERVER['PHP_SELF']?>"> 
     <h3>True or False</h3> 
     <?php 
      for($i=0; $i<count($typeTF); $i++) 
      { 
       echo "<input type = 'text' size = 12 maxlength = 5 name = TF$i+1 />"; 
      } 
     ?> 
     <input type='submit' name='checkAns' id='checkAns' value='Submit Answers'/> 
     <br/> 

</form> 

當我對代碼進行測試,看看它是否工作使用var_dump()我只得到NULL。我該如何解決這個問題?

+0

生成的html是否正確?我認爲你將需要更正html輸出。不是名字的產生 – Florian

回答

0

更容易使用arrays(和你錯過很多報價在input標籤):

foreach($typeTF as $t) 
{ 
    echo '<input type="text" size="12" maxlength="5" name="TF[]" />'; 
} 

然後,只需遍歷$_POST['TF']

0

你不能做數學函數的回聲字符串中有兩個選項:

echo "<input type = 'text' size = 12 maxlength = 5 name = 'TF" . $i+1 . "' />"; 

或者你也可以做一個臨時變量

$temp = $i + 1; 
echo "<input type = 'text' size = 12 maxlength = 5 name = '$temp' />"; 

但我會做到這一點作爲一個數組:

echo "<input type = 'text' size = 12 maxlength = 5 name = 'TF[" . $i+1 . "]' />"; 

所以,你可以訪問$_POST['TF']陣列中的所有值。