如何从循环的HTML表单中获取变量?

时间:2012-02-20 08:21:46

标签: php html

我有一个html表单,我循环这样:

for($i=0;$i<10;$i++){
  echo '<input type="text" name="field'.$i.'">';
}

然后我使用count var创建并隐藏输入,其中表示有10个这样的输入字段。但现在我有$field0$field9,我不知道如何再次在for循环中获取输入。

感谢您的帮助!

3 个答案:

答案 0 :(得分:4)

在输入字段中使用这样的名称:...'field['.$i.']'...

这种方式在你的$ _POST中会出现在数组中,你可以循环遍历它们:

foreach ($_POST['field'] as $key => $value)
{

}

答案 1 :(得分:2)

首先,您应该使用$ _POST来获取表单数据。然后你可以通过

来做到这一点
for($i=0;$i<$_POST["count"];$i++) {
  $var = $_GET["field".$i];
  //do something
}

我假设你在$_POST["count"]中有一个计数变量 第二,你可以更好地使用循环形式的数组

<input type="text" name="field[0]">

然后您在$_POST["field"]中有$_POST["field"][0]$_POST["field"][1]等数组......

但要回答只是你想要你也可以使用变量变量: 这里有一个应该清楚的样本

$a1 = "What";
$a2 = " are";
$a3 = " you";
$a4 = " doing?";
for($i=1;$i<=4;$i++){ 
  $txt .= ${"a".$i}; 
  echo $txt;
}

作为输出

  

“你在做什么?”

:)

答案 2 :(得分:2)

在你的循环中:

echo '<input type="text" name="field['.$i.']">';

然后在提交时处理此表单:

$fields = $_POST['field'];

“field”变量将作为数组发送到PHP