PHP-无法以我想要的方式删除mysqli值
很抱歉标题不明确,我不知道该如何命名。 我需要从数据库中删除特定数量的特定值。我有一张有一些数字的桌子。看起来像这样 1,21,3,4,56,63,72,8,94,10 括号中的数字表示在mysqli数据库中找到一个基数的次数。我的表单允许我选择多个重复的数字以及要删除的数字的重复数。例如,我选择了: 21,54,92 这是给我这些值的代码,但它是不完美的,因为我接收到的所有数字在数据库中至少有一个重复,并且在没有选择数字的情况下为空值,在选择时为正常数字PHP-无法以我想要的方式删除mysqli值,php,mysqli,Php,Mysqli,很抱歉标题不明确,我不知道该如何命名。 我需要从数据库中删除特定数量的特定值。我有一张有一些数字的桌子。看起来像这样 1,21,3,4,56,63,72,8,94,10 括号中的数字表示在mysqli数据库中找到一个基数的次数。我的表单允许我选择多个重复的数字以及要删除的数字的重复数。例如,我选择了: 21,54,92 这是给我这些值的代码,但它是不完美的,因为我接收到的所有数字在数据库中至少有一个重复,并且在没有选择数字的情况下为空值,在选择时为正常数字 在单个表上,可以使用limit限制删除
在单个表上,可以使用limit限制删除的行数
您的查询看起来类似于从表中删除,其中key=value LIMIT 10。请参阅。懒得搜索重复项,但请使用限制:您能将答案添加到答案中而不是添加注释吗?所以我可以选择它作为正确的答案?它解决了我所有的问题,非常感谢!我没想到会这么容易。。。非常感谢。
$arr1 = array();
$arr2 = array();
$newAssoc = array();
if( isset( $_POST['submit'] ) ) {
$quantity = $_POST['quantity'];
$hidden = $_POST['hidden'];
foreach( $hidden as $var1 ) {
$arr1[] = $var1;
}
foreach( $quantity as $var2 ) {
$arr2[] = $var2;
}
$newAssoc = array_combine( $arr1, $arr2 );
foreach( $newAssoc as $key => $val ) {
if( !empty($val)) {
$i = 1;
while( $i <= $val ) {
$delete = mysqli_query( $db, "DELETE FROM duplicates
WHERE numbers=$key" );
++$i;
}
}
}
}
foreach( $newAssoc as $key => $val ) {
if( !empty($val)) {
$delete = mysqli_query( $db, "DELETE FROM duplicates
WHERE numbers=$key
LIMIT $val" );
}