在使用for循环插入期间,php表单发布失败

时间:2014-04-17 17:43:31

标签: php

发布表单后,我正在运行for循环以在表中插入值。

在下面的示例中,它将停止执行name_4。

如何解决这个问题?

<input type ="text" name="name_0" value="" >
<input type ="text" name="name_1" value="" >
<input type ="text" name="name_3" value="" >
<input type ="text" name="name_4" value="" >

array
(
[name_0] => sometext1
[name_1] => sometext2
[name_3] => sometext3                   
 [name_4] => sometext4           
)        
for($i=0;$i<=3;$i++)
{
    "insert into table(field) values('".$_REQUEST['name_'$i]."')"; 

}

1 个答案:

答案 0 :(得分:2)

由于您的代码无论如何都没有用,我打算写一个关于如何执行此操作的建议,您可以接受或离开它。首先,改变你的输入:

<input type ="text" name="name[0]" value="" />
<input type ="text" name="name[1]" value="" />
<input type ="text" name="name[3]" value="" />
<input type ="text" name="name[4]" value="" />

注意我如何将name_0更改为name[0]等等。然后,您的php可以这样工作:

foreach ($_POST['name'] as $name=>$value) {
  //$name will now contain "0","1","3","4"
  //$value will contain each value
  echo "insert into table(field) values('".$value."')"; 
}

此示例不包含任何输入卫生设施,它只是您可以继续工作的一个示例,但如果您问我,它比您提供的更好更清洁。您不必担心跳过的值,遗漏某些内容等等。