用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4080|回复: 5
收起左侧

[HELP] CI框架数据库类是否有批量删除留言的方法?

[复制链接]
发表于 2012-12-29 12:53:00 | 显示全部楼层 |阅读模式
不是一条一条地运用循环来删除留言,也不是全部留言删除,而是想批量删除留言,比如id<=10的留言全部删除,执行一次删除语句就行了,不用一条一条地循环删除,CI框架数据库类有这样方法吗?
 楼主| 发表于 2012-12-29 13:12:08 | 显示全部楼层
好吧,我自己找到了,用下面这个方法
$this->db->where_in('id',$id);
$this->db->delete('users');
其中,$id是个数组array(4,5,6);
发表于 2013-1-3 18:54:26 | 显示全部楼层
这是我现在在使用的方法
PHP复制代码
 
    /**
     * 批量删除
     */

    function My_del_bactch($table,$url,$select="select"){
        $CI = &get_instance();
        $ids=$CI->input->post($select);//页面中传进来的id,id复选框中的值
        for($i=0;$i<count($ids);$i++){
            $CI->mcom_model->delete_data($table,array("id"=>$ids[$i]));
        }
        $msg=mymsg::DELETE_FAIL;
        if(count($ids)>0){
            $msg=mymsg::DELETE_SUCCESS;
        }
        $CI->mytool->alert_msg($msg, site_url($url)); //调用提示信息方法
        exit(); //  exit() 函数输出一条消息,并退出当前脚本
           
    }
 
复制代码


使用你根据楼上写的where_in自己再封装一下就ok了
发表于 2013-1-5 00:48:58 | 显示全部楼层
这个跟 CI 有半毛钱关系?
发表于 2013-1-5 00:49:48 | 显示全部楼层
发表于 2013-3-28 18:06:15 | 显示全部楼层
阿珲 发表于 2012-12-29 13:12
好吧,我自己找到了,用下面这个方法
$this->db->where_in('id',$id);
$this->db->delete('users');

这个方法不错,测试可用。

本版积分规则