PHP教程:研究批量删除数据的方法

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)";
 

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Grow your business fast with

Suku