【发布时间】:2019-01-25 16:41:54
【问题描述】:
我正在尝试使用 PHP PDO 将多个数组插入 MySql 数据库。它插入重复的行并且它没有按照我需要的方式插入。下面是我的代码
HTML
<div class="col-md-4">
<div class="form-group">
<label class="col-form-label"> Enter Product Name</label>
<input type="text" class="form-control" name="pname[]" placeholder="Product Name"/>
</div>
</div>
<div class="col-md-4">
<div class="form-group">
<label class="col-form-label"> No. of Pieces</label>
<input type="text" class="form-control" name="pcount[]" placeholder="No.Of Items"/>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<label class="col-form-label"> Estimated Amount</label>
<input type="text" class="form-control" name="estamount[]" placeholder="Estimated Amount of Each"/>
</div>
<p class="pull-left">Amount: <div class="Amount"></div></p>
</div>
而PHP代码是
$totalamount=0;
foreach($_POST['pname'] as $proname){
foreach($_POST['pcount'] as $quantity){
foreach($_POST['estamount'] as $estamount){
$totalamount = $quantity*$estamount;
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO `order`(custname, contact, product_name, quantity, est_amount, advance_paid, delivery_period, date, status, total_amount, orderid) VALUES(:custname, :contact, :product_name, :quantity, :est_amount, :advance_paid, :delivery_period, :date, :status, :total_amount, :orderid)";
$query=$dbh->prepare($sql);
$query->bindParam(':custname',$custmorname,PDO::PARAM_STR);
$query->bindParam(':contact',$contact,PDO::PARAM_STR);
$query->bindParam(':product_name',$proname,PDO::PARAM_STR);
$query->bindParam(':quantity',$quantity,PDO::PARAM_STR);
$query->bindParam(':est_amount',$estamount,PDO::PARAM_STR);
$query->bindParam(':advance_paid',$advancepaid,PDO::PARAM_STR);
$query->bindParam(':delivery_period',$delevery,PDO::PARAM_STR);
$query->bindParam(':date',$date,PDO::PARAM_STR);
$query->bindParam(':status',$status,PDO::PARAM_STR);
$query->bindParam(':orderid',$orderid,PDO::PARAM_STR);
$query->bindParam(':total_amount',$totalamount,PDO::PARAM_STR);
$query->execute();
}
}
}
我想在一条记录中插入$proname , $quantity , $est_amount,它应该根据插入的值插入多个重新编码
【问题讨论】:
-
请仔细阅读我的问题。我有多个多行数组
-
啊,这使它成为非重复的,因为....???你只写了“它没有按照我要求的方式插入”,而不是你真正需要的
-
@NicoHaase 如果您觉得它可能是重复的,最好将其“标记”为一个,而不是将其作为评论输入。当它被标记时,它会显示在某个地方,其他人可能也会在投票结束时接受它。此外,如果我或其他人可以一次敲击它,那么它也会显示你的名字,而不仅仅是敲击它的人。只是想我会让你知道投票结束的工作原理。我认为您这样做的原因可能是您不能“投票”以重复关闭。没错,但是您可以“标记”为重复项。
-
好吧,这就是我所做的:标记它。该评论是自动撰写的