用PHP做批量删除数据

skystar008 2004-12-15 11:23:53
在PHP版块搜了一下,还没有发现这样的帖子,今天本人正好做到一个,所以贴上来与大家分享.
//+----------------------------------------------------------------------------------
//js部分(注:这段JS代码是TOM邮件里拷贝过来的.我把它修改了一下)
<script language="JavaScript">
<!--
var submitImgId = '';
function SetSubmitImgId(ImgId)
{
submitImgId = ImgId;
}
function CheckBeforSubmit(theForm)
{
if (submitImgId == 'del')
{
if (confirm("您真的要删除这些信息么?"))
return true;
}
return false;
}
// -->
</script>
//+-----------------------------------------------------------------------------------
//Form 部分 比如:
<form name="form1" action="" method="post" onsubmit="return CheckBeforSubmit(form1);">
//循环体
<input type=checkbox value="$id" name="xlh[]">
//循环体结束
<input type="submit" value="删除" name="del" onclick="SetSubmitImgId('del');">
//+----------------------------------------------------------------------------------
//php代码部分
if (isset($del))
{
if(is_array($xlh))
{
$ids = $comma = "";
foreach($xlh as $id)
{
$ids .= "$comma'$id'";
$comma = ", ";
}
$query="DELETE FROM $table WHERE id IN ($ids)";
//删除成功
}
}
//End
...全文
837 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
skystar008 2004-12-16
  • 打赏
  • 举报
回复
楼上两位也贴出来呀,光说有什么用啊~!
chf99cn 2004-12-16
  • 打赏
  • 举报
回复
html:message_list.html
<table border=1 width="100%" cellspacing="0" cellpadding="1" bordercolordark=#EFEFEF bordercolor="#FFFFFF" style="font-size:12px;">
{section name=t loop=$message} {strip}
<tr bgcolor="#FAFAFA" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor='#FFFFFF'">
<td width="5%" height="20" align="center" valign=middle style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;"><input type=checkbox name="chk[]" id="chkItem" value={$message[t].message_id}>
</td>
<td width="15%" align="left" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;">{$message[t].user_id}</td>
<td width="45%" align="left" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;"><a href="./index.php?act=Message&CODE=00&message_id={$message[t].message_id}&sign=read" >{$message[t].sign1}{$message[t].title}{$message[t].sign2}</a></td>
<td width="25%" align="left" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;" >{$message[t].record_date}</td>
<td width="15%" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;"><a href="./index.php?act=Message&CODE=05&message_id={$message[t].message_id}" >回复</a></td>
</tr>
{/strip} {/section}<p>
<tr bordercolor="E5E5E5" bgcolor="#FFFFFF">
<td width="30%" height="22" align="left" colspan="2" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;"><a href="#" onmousemove ="window.status='';" onclick="check('1')">全选</a> -<a href="#" onmousemove ="window.status='';" onclick="check('0')">取消</a></td>
<td width="70%" align="right" colspan="5" style="BORDER-LEFT-STYLE:none;BORDER-RIGHT-STYLE:none;BORDER-TOP-STYLE:none;border-bottom-color: #C0C0C0;">{$Frist}{$Previous}{$Next}{$Last}{$Jump}</td>
</tr>
</table>
<table width="100%" cellspacing="0" cellpadding="0" style="font-size:12px;">
<tr bordercolor="E5E5E5" bgcolor="E5E5E5">
<td width="60%" align="left" colspan="3"><input type="submit" value="删除"></td>
<td width="40%" align="right" colspan="2">{$Total} 条信息中的 {$FR}-{$LA}</td>
</tr>
</table>
php:
function message_delete()
{
global $gTPL,$gDB,$gINFO;
$coun = count ($_POST['chk']);
$tmp=$_POST['chk'];
for ($i = 0; $i < $coun; $i++)
{
//删除操作
$query_str = "DELETE FROM message WHERE message_id =$tmp[$i]";
$gDB->query($query_str);
}
$this->message_list();
}
intereye 2004-12-16
  • 打赏
  • 举报
回复
偶也贴一个自己常用的~~

function delRecord()
{
var flag=true;
var temp="";
var tmp;
if((document.theForm.id_list.length+"")=="undefined")
{
tmp = 1
}else{
tmp = document.theForm.id_list.length
}
if (tmp==1){
if (document.theForm.id_list.checked)
{
flag=false;
temp=document.theForm.id_list.value
}
}else{
for (i=0;i<document.theForm.id_list.length;i++)
{
if (document.theForm.id_list[i].checked)
{
if (temp=="")
{
flag=false;
temp=document.theForm.id_list[i].value
}else{
flag=false;
temp = temp +","+ document.theForm.id_list[i].value
}
}
}
}

if (flag)
{
alert("对不起,你还没有选择!");
}else{
if (confirm("删除后不可恢复,确定吗?"))
{
window.location="?action=del&id="+temp;
return false;
}else{
return false;
}
}
return !flag;
}
chf99cn 2004-12-15
  • 打赏
  • 举报
回复
哪里,我个我有做过,用smarttemplate模板做的循环!也是生成checkbox,呵呵!
hflsj 2004-12-15
  • 打赏
  • 举报
回复
我也用啊,不仅数据,我连图片,生成的静态文件一并删除了。呵呵

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧