$array=array(
'amount'=>$this->input->post('netamt'),
'trandate'=>$billdate,
'crcode'=>$this->input->post('rcode')
);
$this->db->where('voucher',$this->input->post('billno'));
$this->db->like('code','16','after');
$this->db->update('tranachst',$array);
使用时显示此查询 echo $ this-> db-> last_query();
UPDATE `tranachst` SET `amount` = '717360', `trandate` = '2015-07-15', `crcode` = '311001' WHERE `voucher` = '15020'
这里的查询不起作用,为什么?
答案 0 :(得分:1)
请尝试这个 -
我的例子 -
$this->db->where('faq_id', $id);
$this->db->where('question LIKE ', '%do%');
$this->db->update('admin_faqs', $data);
你的例子 -
$array=array(
'amount'=>$this->input->post('netamt'),
'trandate'=>$billdate,
'crcode'=>$this->input->post('rcode')
);
$this->db->where('voucher',$this->input->post('billno'));
$this->db->where('code LIKE ', '16%');
$this->db->update('tranachst',$array);
在此代码中,您不需要使用之后,在参数之前请尝试这个..
答案 1 :(得分:0)
有些人有同样的问题,直到现在我还不知道为什么。但显然CI不支持上述活跃记录。
您可以使用$this->db->query()
或
function index(){
$this->load->database();
$data=array(
'userlogin'=>'test'
);
$this->db->where('userlogin','xx');
$this->db->where("email like 'xx'");
$q=$this->db->update('master_user',$data);
}
类似的东西也起作用。 同一个问题:CodeIgniter Active Record 'like' ignoring 'where'