我相信很多朋友還不知道如何來批量刪除不要的數據,單使用php 批量刪除數據我們需要結合mysql的in條件來實現了,這個估計大家看了這句話就明白如何做了,下面我就來給需要了解的朋友詳細分析批量刪除數據過程。
我們刪除需要的sql語法
delete from aaaa where id in(1,2,3)這裡面的1,2,3就是我們需要刪除的記錄了
那麼在php中如何來做
1、首先在文章列表頁面(list.php),將多選筐命名為:“$del_id[]”,值為文章ID號。
例如(list.php):
代碼如下<form name="del_form" action="del.php" method="post">
<?php
$result=mysql_query("select * from news");
while($rs=mysql_fetch_array($result)){
?>
<input name="del_id[]" type="checkbox" id="del_id[]" value="<?=$rs[id]?>" /><?=$rs[title]?>
<?php
}
?>
</form>
2、處理頁面(del.php):
<?php
if($del_id!=""){
$del_num=count($del_id);
for($i=0;$i<$del_num;$i++){
mysql_query("Delete from news where id='$del_id[$i]'");
}
echo("<script type='text/javascript'>alert('刪除成功!');history.back();</script>");
}else{
echo("<script type='text/javascript'>alert('請先選擇項目!');history.back();</script>");
}
?>
案例分析:
上面批量核心代碼是 表單名為del_id[]與
代碼如下for($i=0;$i<$del_num;$i++){
mysql_query("Delete from news where id='$del_id[$i]'");
}
這個就是獲取提交過來的數組然後我們再遍歷一條條刪除了這個與我們最前面的說法更小一樣,其實我們可以加地改進
代碼如下$ids = implode(',',$_POST['del_id']);
$sql ="delete from aaaa where id in($ids)";
mysql_query($Sql);
這樣就可以簡少很多的語句哦,當然上面需要判斷提交過來的是不是數組了,最後我們對del.php文件進行代碼優化刪除操作
代碼如下<?php
if(is_array($del_id)){
$ids = implode(',',$_POST['del_id']);
$sql ="delete from aaaa where id in($ids)";
if( mysql_query($Sql))
{
echo '刪除成功';
}
else
{
echo '刪除失敗';
}
}
}
?>