PHP / SQL:使用选择选项多次删除数据
Posted
技术标签:
【中文标题】PHP / SQL:使用选择选项多次删除数据【英文标题】:PHP / SQL: Multiple delete data using Select Option 【发布时间】:2020-10-01 20:49:53 【问题描述】:现在我创建了一个可以使用选择选项删除多个数据的系统。但是在这里我遇到了一些问题。当我只选择一个数据,然后按删除按钮时,它将删除。但是如果我选择了多个数据,例如3个数据,它只会删除数据的最新id。下面是我的图片
下面是我的代码:
index.php
<form method="post" id="multiple_select_form">
<select name="framework" id="framework" class="form-control selectpicker" data-live-search="true" multiple>
<?php foreach ($results as $row2): ?>
<option value= <?php echo $row2["framework_id"]; ?>><?php echo $row2["framework_name"];?></option>
<?php endforeach ?>
</select>
<br /><br />
<input type="hidden" name="framework_id" id="framework_id" />
<input type="submit" name="submit" class="btn btn-info" value="Submit" />
</form>
<script>
$(document).ready(function()
$('.selectpicker').selectpicker();
$('#framework').change(function()
$('#framework_id').val($('#framework').val());
);
$('#multiple_select_form').on('submit', function(event)
event.preventDefault();
if($('#framework').val() != '')
var form_data = $(this).serialize();
$.ajax(
url:"insert.php",
method:"POST",
data:form_data,
success:function(data)
//console.log(data);
$('#framework_id').val('');
$('.selectpicker').selectpicker('val', '');
alert(data);
)
else
alert("Please select framework");
return false;
);
);
</script>
插入.php
<?php
include("configPDO.php");
$smt = $conn->prepare("DELETE FROM frame_list WHERE framework_id = '".$_POST["framework_id"]."'");
$smt->execute();
if($smt)
echo "Data DELETED";
else
echo "Error";
?>
谁能知道如何解决这个问题?谢谢
【问题讨论】:
【参考方案1】:framework
每次都会保存一个值。
使用输入数组 -
将name="framework"
更改为name="framework[]"
。
并在查询中 -
WHERE framework_id in ('". implode("','", $_POST["framework_id"]) ."')"
尝试使用参数绑定来保证安全。
【讨论】:
我收到错误的 ant 查询。内爆,传递了无效的参数。以上是关于PHP / SQL:使用选择选项多次删除数据的主要内容,如果未能解决你的问题,请参考以下文章