您好我打算在点击提交的同时删除和插入值,它会删除旧值,同时会插入新值
这是我的代码。
<?php
if (isset($_POST['submit'])) {
$color1 = $_POST['color1'];
$count = count($color1);
for ($x = 0; $x <=$count; $x++) {
$savecolor = $color1[$x];
$stmt = $db->prepare("DELETE FROM productcolor WHERE productinformationID = :field0");
$stmt->execute(array(':field0' => $prodID));
$stmt = $db->prepare("INSERT INTO productcolor(productinformationID,colorName) VALUES(:field0,:field00)");
$stmt->execute(array(':field0' => $prodID, ':field00' => $savecolor));
}
}
?>
它只删除我的值,我的数据库中没有值保存..
请帮帮我。感谢
答案 0 :(得分:0)
PHP中的mysql
支持不允许在一个查询中使用多个状态,因此您无法删除行并更新同一查询。
您可以使用INSERT... OR UPDATE
语句代替DELETE
和INSERT
来接近您希望实现的任务。
http://dev.mysql.com/doc/refman/5.7/en/insert-on-duplicate.html
E.g
INSERT INTO productcolor(productinformationID,colorName)VALUES(&#34; foo&#34;,&#34; bar&#34;)ON DUPLICATE KEY UPDATE productinformationID = VALUES(productinformationID),colorName = VALUES(colorName)
答案 1 :(得分:0)
<?php
global $wpdb;
if(isset($_POST['submit'])) {
$checkBox =$_POST['chk1'];
$wpdb->query( "DELETE FROM wp_vandor WHERE parent_id = '".$user_id."'" );
foreach($checkBox as $checkedfv){
$wpdb->query("INSERT INTO wp_vandor (parent_id, child_id) VALUES ('".$user_id."', '".$checkedfv."')");
}
$crpurl = home_url('favorite-vendors');
header("Location: ".$crpurl);
}
?>