php-如何在foreach中插入多个记录
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php-如何在foreach中插入多个记录,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2318字,纯文字阅读大概需要4分钟。
内容图文
![php-如何在foreach中插入多个记录](/upload/InfoBanner/zyjiaocheng/650/a882edd5f55848098d2c51f0267b8634.jpg)
我试图在foreach循环中插入多个记录,这确实使我发疯,因为它只插入第一个记录然后停止.您能帮我知道我的问题在哪里吗?
foreach ($_SESSION["cart_products"] as $cart_itm) {
//set variables to use in content below
$product_name = $cart_itm["product_name"];
$product_qty = $cart_itm["product_qty"];
$product_price = $cart_itm["product_price"];
$product_code = $cart_itm["product_code"];
//$product_color = $cart_itm["product_color"];
$subtotal = ($product_price * $product_qty); //calculate Price x Qty
$result = "insert into ordered (product_name, product_price) values ('$product_name',$product_price)";
if (mysqli_query($mysqli, $result)) {
echo "New record created successfully";
}
$bg_color = ($b++%2==1) ? 'odd' : 'even'; //class for zebra stripe
echo '<tr class="'.$bg_color.'">';
echo '<td><input type="text" size="2" maxlength="2" name="product_qty['.$product_code.']" value="'.$product_qty.'" /></td>';
echo '<td>'.$product_name.'</td>';
echo '<td>'.$product_price.'RY</td>';
echo '<td>'.$subtotal.'RY</td>';
echo '<td><input type="checkbox" name="remove_code[]" value="'.$product_code.'" /></td>';
echo '</tr>';
$total = ($total + $subtotal); //add subtotal to total var
}
解决方法:
你可以试试看这将通过单个查询插入所有数据.
<?php
$queryData = [];
foreach ($_SESSION["cart_products"] as $cart_itm)
{
//set variables to use in content below
$product_name = $cart_itm["product_name"];
$product_qty = $cart_itm["product_qty"];
$product_price = $cart_itm["product_price"];
$product_code = $cart_itm["product_code"];
//$product_color = $cart_itm["product_color"];
$subtotal = ($product_price * $product_qty); //calculate Price x Qty
$queryData[] = "('$product_name',$product_price)";
$bg_color = ($b++%2==1) ? 'odd' : 'even'; //class for zebra stripe
echo '<tr class="'.$bg_color.'">';
echo '<td><input type="text" size="2" maxlength="2" name="product_qty['.$product_code.']" value="'.$product_qty.'" /></td>';
echo '<td>'.$product_name.'</td>';
echo '<td>'.$product_price.'RY</td>';
echo '<td>'.$subtotal.'RY</td>';
echo '<td><input type="checkbox" name="remove_code[]" value="'.$product_code.'" /></td>';
echo '</tr>';
$total = ($total + $subtotal); //add subtotal to total var
}
$result="insert into ordered (product_name,product_price) values ".implode(",",$queryData)) . ";";
if (mysqli_query($mysqli, $result)) {
echo "New record created successfully";
}
内容总结
以上是互联网集市为您收集整理的php-如何在foreach中插入多个记录全部内容,希望文章能够帮你解决php-如何在foreach中插入多个记录所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。