php 添加行_使用PHP在表格中插入多行

这篇博客讨论了如何使用PHP将多行数据一次性插入到MySQL数据库中。作者遇到问题,尝试将$_POST数组的多个字段与数据库字段对应并插入数据,但初始脚本无法正常工作。解决方案是通过构建一个包含所有要插入值的数组,然后使用implode函数组合成一个大的INSERT语句,一次性执行多行插入操作。修正后的代码提高了效率,减少了大型查询可能导致的问题。
摘要由CSDN通过智能技术生成

我正在尝试使用PHP和HTML from将多个行插入MySQL DB.我知道基本的PHP,并在不同的论坛上搜索了许多示例,并创建了一个脚本,但是它似乎不起作用.任何人都可以帮忙.这是我的脚本:

include_once 'include.php';

foreach($_POST['vsr'] as $row=>$vsr) {

$vsr=mysql_real_escape_string($vsr);

$ofice=mysql_real_escape_string($_POST['ofice'][$row]);

$date=mysql_real_escape_string($_POST['date'][$row]);

$type=mysql_real_escape_string($_POST['type'][$row]);

$qty=mysql_real_escape_string($_POST['qty'][$row]);

$uprice=mysql_real_escape_string($_POST['uprice'][$row]);

$tprice=mysql_real_escape_string($_POST['tprice'][$row]);

}

$sql .= "INSERT INTO maint_track (`vsr`, `ofice`, `date`, `type`, `qty`, `uprice`,

`tprice`) VALUES ('$vsr','$ofice','$date','$type','$qty','$uprice','$tprice')";

$result = mysql_query($sql, $con);

if (!$result) {

die('Error: ' . mysql_error());

} else {

echo "$row record added";

}

最佳答案

MySQL可以在一个查询中插入多行.我将您的代码尽可能地靠近原始代码.请记住,如果您有大量数据,这可能会创建一个大型查询,该查询可能大于MySQL所接受的查询.

include_once 'include.php';

$parts = array();

foreach($_POST['vsr'] as $row=>$vsr) {

$vsr=mysql_real_escape_string($vsr);

$ofice=mysql_real_escape_string($_POST['ofice'][$row]);

$date=mysql_real_escape_string($_POST['date'][$row]);

$type=mysql_real_escape_string($_POST['type'][$row]);

$qty=mysql_real_escape_string($_POST['qty'][$row]);

$uprice=mysql_real_escape_string($_POST['uprice'][$row]);

$tprice=mysql_real_escape_string($_POST['tprice'][$row]);

$parts[] = "('$vsr','$ofice','$date','$type','$qty','$uprice','$tprice')";

}

$sql = "INSERT INTO maint_track (`vsr`, `ofice`, `date`, `type`, `qty`, `uprice`,

`tprice`) VALUES " . implode(', ', $parts);

$result = mysql_query($sql, $con);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值