php - 通过 PHP 使用 While 循环将多个数据插入到 SQL Server

标签 php mysql sql

这个想法是将相同的数据插入 SQL DB $quantity 次 这意味着如果我的数量 = 10,SQL 查询需要插入相同的数据 10 次 问题是我总是多一张记录 意思是如果我的数量=2,我将有 3 条记录 如果我把它设置为 1,我将有 2 条记录,所以

$i=1; 
while ($i<="$quantity")   
{
  $sql="INSERT INTO arivage (ID_Ship, Date_ariv, Date_achat, prov_id, Sph, cyl, Prod_type, Pord_color)  
       VALUES ('', '$date', '$date1', '$prov_id', '$sph', '$cyl', '$Prod_type', '$Prod_color')";
  mysql_query($sql);      
  $i++;
}
if (!mysql_query($sql,$con))
{
  die('Error: ' . mysql_error());
}

我在代码中也有sql连接和关闭。

最佳答案

如果您的一条记录总是过多,这可能意味着您的数量值不正确(?)。

此外,这与您的问题无关,您应该使用 while($i<=$quantity)而不是while($i<="$quantity") 。您不需要"

第一个 block 没问题:

$i=1; 
while ($i<="$quantity")   
{
    $sql="INSERT INTO arivage (ID_Ship, Date_ariv, Date_achat, prov_id, Sph, cyl, Prod_type, Pord_color)  
        VALUES ('', '$date', '$date1', '$prov_id', '$sph', '$cyl', '$Prod_type', '$Prod_color')";
    mysql_query($sql);      
    $i++;
}

下一个 if 语句再次执行您的查询,这意味着您插入了太多行。删除整个 if 语句将解决您的“插入太多行”问题。

if (!mysql_query($sql,$con))
{
    die('Error: ' . mysql_error());
}

或者,将 while 循环更改为:。

$i=1; 
while ($i<="$quantity")   
{
    $sql="INSERT INTO arivage (ID_Ship, Date_ariv, Date_achat, prov_id, Sph, cyl, Prod_type, Pord_color)  
    VALUES ('', '$date', '$date1', '$prov_id', '$sph', '$cyl', '$Prod_type', '$Prod_color')";
    if(!mysql_query($sql, $con)) {
        die('Error: ' . mysql_error());
    }
    $i++;
}

关于php - 通过 PHP 使用 While 循环将多个数据插入到 SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10279764/

相关文章:

javascript - 如何在 jQuery 中的单个保存按钮上更新数据和添加数据?

php - 比较多个数组的相同值

c# - 销售产品数量

php - 查询不会使用使用直接 SQL 的 php 返回结果

php - 对行求和并插入新列

php - 有没有好的 PHP CRUD 代码生成器?

php - 在数据库中存储可变数量的值

mysql - MySQL 中不允许使用反向复合主键

php - 在DB表上记录数据

php - 如何连接所有表?