php - 动态表单字段插入

标签 php mysql mysqli

我有以下代码,将数据插入我的 SQL 数据库

for ($i = 0, $len = count($_POST['ItemID']); $i < $len; $i++) 
 {
         $insertSQL = sprintf("INSERT INTO services (ItemID, JCard, CusID, Jcardid, ItemNo, PernNo, jcDescription) VALUES (%s, %s, %s, %s, %s, %s, %s)",

         GetSQLValueString($_POST['ItemID'][$i], "int"),
         GetSQLValueString($_POST['JCard'][$i], "int"),
         GetSQLValueString($_POST['CusID'][$i], "text"),
         GetSQLValueString($_POST['Jcardid'][$i], "text"),
         GetSQLValueString($_POST['ItemNo'][$i], "int"),
         GetSQLValueString($_POST['PernNo'][$i], "text"),  
         GetSQLValueString($_POST['JcDescription'][$i], "text"));

表单已生成动态字段;

问题是只有一行(第一行)被插入到数据库

最佳答案

试试这个:

for ($i = 0; $i < count($_POST['ItemID']); $i++) 
{
     $insertSQL = sprintf("INSERT INTO services (ItemID, JCard, CusID, Jcardid, ItemNo, PernNo, jcDescription) VALUES (%s, %s, %s, %s, %s, %s, %s)",

     GetSQLValueString($_POST['ItemID'][$i], "int"),
     GetSQLValueString($_POST['JCard'][$i], "int"),
     GetSQLValueString($_POST['CusID'][$i], "text"),
     GetSQLValueString($_POST['Jcardid'][$i], "text"),
     GetSQLValueString($_POST['ItemNo'][$i], "int"),
     GetSQLValueString($_POST['PernNo'][$i], "text"),  
     GetSQLValueString($_POST['JcDescription'][$i], "text");
}

关于php - 动态表单字段插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33410208/

相关文章:

php - 连接静态变量上的内容

mysql - 使用 GROUP BY 限制计数

php - Mysql插入数据如果不存在否则显示警告

php - mysqli insert - 但只有在不重复的情况下

php - mysql数据库中的论坛数据

PHP - 正确检查 $_POST ['variable' ] 是否已发布

mysql - 如何查找mysql数据库的最后更新日期

mysql - 在 mysql 的 Select If 条件中使用更新查询

php - 获取行数和回显

php - 默认情况下 Apache 2 gzip json 输出吗?