阿珲 发表于 2012-12-29 12:53:00

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

不是一条一条地运用循环来删除留言,也不是全部留言删除,而是想批量删除留言,比如id<=10的留言全部删除,执行一次删除语句就行了,不用一条一条地循环删除,CI框架数据库类有这样方法吗?

阿珲 发表于 2012-12-29 13:12:08

好吧,我自己找到了,用下面这个方法
$this->db->where_in('id',$id);
$this->db->delete('users');
其中,$id是个数组array(4,5,6);

273579540 发表于 2013-1-3 18:54:26

这是我现在在使用的方法

    /**
   * 批量删除
   */
    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了

ichou 发表于 2013-1-5 00:48:58

这个跟 CI 有半毛钱关系?

ichou 发表于 2013-1-5 00:49:48

http://codeigniter.org.cn/user_guide/database/index.html

子木小乔 发表于 2013-3-28 18:06:15

阿珲 发表于 2012-12-29 13:12 static/image/common/back.gif
好吧,我自己找到了,用下面这个方法
$this->db->where_in('id',$id);
$this->db->delete('users');


这个方法不错,测试可用。
页: [1]
查看完整版本: CI框架数据库类是否有批量删除留言的方法?