删除多条记录的问题用户管理页面,删除单条的记录我现在已经掌握了,可是如何一次删除多条记录呢?我知道用循环,但是具体如何取得选中的那些记录的id呢?哪位大哥帮我写下完整的代码吧我的代码:<SCRIPT language=javascript>
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.name != 'chkall')
e.checked = form.chkall.checked;
}
}
</SCRIPT>
<body>
<form name=myform method='post' action='' onsubmit='return checkdata();'>
<table width="502" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#666666">
<tr>
<td colspan="5" align="center" valign="middle" bgcolor="#666666"><span class="STYLE2">用户管理</span></td>
</tr>
<tr>
<td width="37" align="center" bgcolor="#FFFFFF"><input type="checkbox" name="chkall" onClick="javascript:CheckAll(this.form)"></td>
<td width="145" align="center" bgcolor="#FFFFFF"><strong>用户名</strong></td>
<td width="94" align="center" bgcolor="#FFFFFF"><strong>状态</strong></td>
<td width="95" align="center" bgcolor="#FFFFFF"><strong>编辑</strong></td>
<td width="95" align="center" bgcolor="#FFFFFF"><strong>删除</strong></td>
</tr>
<?php
while($Row=mysql_fetch_array($result))
{
$wyx_id=$Row["wyx_id"];
$wyx_name=$Row["wyx_name"];
$wyx_pass=$Row["wyx_pass"];
?>
<tr>
<td width="37" align="center" bgcolor="#FFFFFF"><input type="checkbox" value=""></td>
<td width="145" align="center" bgcolor="#FFFFFF"><?php echo $wyx_name ?></td>
<td width="94" align="center" bgcolor="#FFFFFF"></td>
<td width="95" align="center" bgcolor="#FFFFFF"><a href="admin_useredit.php?id=<?php echo $wyx_id ?>">编辑</a></td>
<td width="95" align="center" bgcolor="#FFFFFF"><a href="admin_userdel.php?id=<?php echo $wyx_id ?>">删除</a></td>
</tr>
<?php
}
?> <tr>
<td colspan="5" bgcolor="#FFFFFF">
<input type=submit name=submit value=删除>
</td>
</tr>
</table>
</form>
</body>
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.name != 'chkall')
e.checked = form.chkall.checked;
}
}
</SCRIPT>
<body>
<form name=myform method='post' action='' onsubmit='return checkdata();'>
<table width="502" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#666666">
<tr>
<td colspan="5" align="center" valign="middle" bgcolor="#666666"><span class="STYLE2">用户管理</span></td>
</tr>
<tr>
<td width="37" align="center" bgcolor="#FFFFFF"><input type="checkbox" name="chkall" onClick="javascript:CheckAll(this.form)"></td>
<td width="145" align="center" bgcolor="#FFFFFF"><strong>用户名</strong></td>
<td width="94" align="center" bgcolor="#FFFFFF"><strong>状态</strong></td>
<td width="95" align="center" bgcolor="#FFFFFF"><strong>编辑</strong></td>
<td width="95" align="center" bgcolor="#FFFFFF"><strong>删除</strong></td>
</tr>
<?php
while($Row=mysql_fetch_array($result))
{
$wyx_id=$Row["wyx_id"];
$wyx_name=$Row["wyx_name"];
$wyx_pass=$Row["wyx_pass"];
?>
<tr>
<td width="37" align="center" bgcolor="#FFFFFF"><input type="checkbox" value=""></td>
<td width="145" align="center" bgcolor="#FFFFFF"><?php echo $wyx_name ?></td>
<td width="94" align="center" bgcolor="#FFFFFF"></td>
<td width="95" align="center" bgcolor="#FFFFFF"><a href="admin_useredit.php?id=<?php echo $wyx_id ?>">编辑</a></td>
<td width="95" align="center" bgcolor="#FFFFFF"><a href="admin_userdel.php?id=<?php echo $wyx_id ?>">删除</a></td>
</tr>
<?php
}
?> <tr>
<td colspan="5" bgcolor="#FFFFFF">
<input type=submit name=submit value=删除>
</td>
</tr>
</table>
</form>
</body>
每条记录对应的id,
公用一个名s[],如果选择哪个提交表单就是一个数组啊,然后$expr = join(",", $_POST['s']);
这样执行时delete from table where id in ($expr )
就可以啊
{
$sql="delete from table where id=$value";
}
这样就OK了
post 过去就是
$ids[0]=id1;
$ids[1]=id2; 这个形式,楼上的已经说的很明白了.
$del = join(",", $_POST['delid']);
这样执行时
$sql = "delete from tbl where id in ($del ) ";
在form内部加个<input type="hidden" name="allcheckboxs" id="allcheckboxs"> function getValue()
{
<!--//获得复选框的值
form_job.allcheckboxs.value = "";
if( !form_job.Id11.length ) // 只有一个复选框,form3.checkbox1.length = undefined
{
if(form_job.Id11.checked )
form_job.allcheckboxs.value = form_job.Id11.value;
}
else
{
for ( ii = 0 ; ii < form_job.Id11.length ; ii++ )
{
if ( form_job.Id11(ii).checked ) // 复选框中有选中的框
{
form_job.allcheckboxs.value = form_job.Id11(ii).value;
for ( j = ii + 1 ; j < form_job.Id11.length ; j++ )
{
if ( form_job.Id11(j).checked )
{
form_job.allcheckboxs.value += ","; //用,做分割符
form_job.allcheckboxs.value += form_job.Id11(j).value;
}
}
break;
}
}
}
}form_job是你form的名字,Id11是所有复选矿名字
再在action里接受allcheckboxs,然后用
delete from 表名 where id in(".$allcheck.")