删除多条记录的问题
删除多条记录的问题
用户管理页面,删除单条的记录我现在已经掌握了,可是如何一次删除多条记录呢?
我知道用循环,但是具体如何取得选中的那些记录的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><?phpwhile($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>
$wyx_id=$_POST['wyx_id'];foreach($wyx_id as $value){$sql="delete from table where id=$value";}这样就OK了
[解决办法]
<input type="checkbox" name="ids[]" value="这里要输入id">
post 过去就是
$ids[0]=id1;
$ids[1]=id2; 这个形式,楼上的已经说的很明白了.
[解决办法]
多条主要用条件语句来控制。
比如说id in ...,或者id > ... 又或者 id not in ...
等等。
------解决方案--------------------
<td width="37" align="center" bgcolor="#FFFFFF"><input type="checkbox" value="<?PHP echo $wyx_id;?>" name="delid[]"></td>
在你的处理页面
$del = join(",", $_POST['delid']);
这样执行时
$sql = "delete from tbl where id in ($del ) ";
[解决办法]
jf
[解决办法]
都被答完了。jf
[解决办法]
在form里加个onsubmit="return getValue();"
在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; } } }}