大家可以參考下面的這篇文章http://www.jb51.net/article/6488.htm
SQL:$SQL="delete from `doing` where id in ('1,2,3,4')";
數據用逗號隔開。
表單:
復制代碼 代碼如下:
<form action="?action=doing" method="post">
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="1"/>
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="2"/>
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="3"/>
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="4"/>
<input type="submit"/>
</form>
好$ID_Dele=$_POST['ID_Dele']將會是一個數組,雖然說PHP是弱類型的,但這裡可沒ASP弱。
ASP可以直接:
SQL="delete from [doing] where id in ('"&ID_Dele&"')"進行刪除。但PHP不能把$ID_Dele直接放進去。因為$ID_Dele可不是'1,2,3,4'哦,因為$ID_Dele是一個數組,具有鍵和值。
好,PHP中也不難,剛好有個函數:implode(),對了。同split()explode()功能剛好相反的一個函數,後兩者是用某字符(比如逗號)分割的,而前者則可以拼接為字符串。
因此:
復制代碼 代碼如下:
$ID_Dele= implode(",",$_POST['ID_Dele']);
$SQL="delete from `doing` where id in ($ID_Dele)";
提供測試代碼:
復制代碼 代碼如下:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<?php
if ($_POST["action"]="doing"){
$del_id=$_POST["ID_Dele"];
$ID_Dele= implode(",",$_POST['ID_Dele']);
echo "合並後:".$ID_Dele."<br />合並前:";
if($del_id!=""){
$del_num=count($del_id);
for($i=0;$i<$del_num;$i++){
echo $del_id[$i];
}
}
}else{
echo "請提交";
}
?>
<form action="?action=doing" method="post">
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="第1個"/>第1個
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="第2個"/>第2個
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="第3個"/>第3個
<input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="第4個"/>第4個
<input type="submit"/>
</form>