PHP实现批量删除(封装)
2018-09-21 16:43
前台
<!DOCTYPE html> <html> <head> <title>批量删除</title> </head> <body> <script type=text/javascript> //复选框 function checkall(all) { var ck = document.getElementsByClassName(ck); if(all.checked) { for(var i=0;i<ck.length;i++) { ck[i].setAttribute(checked,checked); } } else { for(var i=0;i<ck.length;i++) { ck[i].removeAttribute(checked); } } } </script> <form action=test.php method=post> <table border=1> <tr><th><input type=checkbox name=all onclick=checkall(this)/>id</th><th>名字</th></tr> <!-- 此处调用显示列表函数 --> <?php show() ?> <tr><td colspan=3><input type=submit value=批量删除></td></tr> </table> </form> </body> <?php //显示列表 function show() { //连接数据库 @mysql_connect(localhost,root,); mysql_select_db(test); mysql_query(set names utf8); $sql = select id,name from test; $res = mysql_query($sql); //循环取出数据 while($row = mysql_fetch_row($res)) { echo <tr> <td> <input type=checkbox value={$row[0]} name=item[] class=ck /> {$row[0]} </td> <td>{$row[1]}</td> </tr>; } } ?> </html>
后台
<?php //接收post传来的数组 $arr = $_POST[item]; /** * 批量删除 * 思路:把前台批量选择的数据放在数组里,删除该数组即可 * @param $arr <array()> * @return $res 成功or失败 */ function batch_del($arr) { @mysql_connect(localhost,root,); mysql_select_db(test); mysql_query(set names utf8); //把数组元素组合为字符串: $str = implode(,,$arr); //in 表示多个 $sql = delete from test where id in({$str}); $res = mysql_query($sql); if (!$res){ echo 删除失败; }else { if (mysql_affected_rows()>0){ echo 删除成功; }else { echo 没有行受到影响; } } } //调用批量删除函数 batch_del($arr);
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!