循环通过动态输入框并插入到mysql数据库中

时间:2012-06-19 19:38:48

标签: php mysql forms for-loop foreach

我的表格需要你的帮助。我正在尝试构建一个动态表单,其中在先前形式sp1.php中输入的特定整数用于显示输入框的数量。

第一种形式的变量是$ state和$ number。然后在处理页面sp2.php上,将$ number的值放入for循环中以显示输入框。

我现在要做的是将输入到输入框中的值插入到mysql表中。

我得到的错误是

1)未定义的索引:DISTRICT 2)为foreach()提供的无效参数

请问我该怎么做才能做到这一点。谢谢。

我的代码如下。如果需要,我将非常乐意展示代码的其他部分。 谢谢。

<?php 

 $state=htmlspecialchars(($_POST['state']))       ; 
 $number = intval(($_POST['number']));

  for ($i = 0; $i < $number ; $i++ ) { 

  echo "
  <form action='sd2.php' method='post'>
    <label for='name'>Districts</label>
    <input type='text' name='district[]'>
    <br/><br/>
  </form>"; 

    }
    ?>   
    <?php     

 foreach($_POST['district'] as $senatorial) {
     $query = "INSERT INTO  state  ( `state_id`, `state`, `senatorial`)
     VALUES (NULL, '".$state."', '".$senatorial."') "; 
     mysql_query($query) or die (mysql_error());  
 }
 ?>

1 个答案:

答案 0 :(得分:2)

这必须有效:

$count = count($_POST['district']);
for ($i=0; $i<$count; $i++){
    $district = $_POST['district'][$i];
    //do this
    //do that
}