codeigniter活动记录更新不起作用

时间:2014-05-02 08:01:02

标签: php codeigniter activerecord

尝试在会话表中更新所有会话ID的会话数据,但一直在努力奋斗几个小时。

$_data = array('sess_data'  => 'abc');
$this->db->where('sess_id', $_sid);
$this->db->update($_table, $_data);

下面的代码给我一个值1,表示上面的代码确实有效。

$this->db->affected_rows();  

但是当我通过phpmyadmin查看数据库时,没有更新任何内容。没有生成mysql错误消息。请告知如何进一步。

已编辑

UPDATE `sessions` SET `sess_data` = 'abc' WHERE `sess_id` = 'skavnhgk84712r06npem76snu2'  

更新:

奇怪,今天我再添加2个会话记录,它只更新了第二个&第3条记录,第1条记录不变。为什么会这样?我正在使用foreach循环,下面是生成的查询。

UPDATE `sessions` SET `sess_data` = 'ABC' WHERE `sess_id` = 'skavnhgk84712r06npem76snu2'  no success!  
UPDATE `sessions` SET `sess_data` = 'ABC' WHERE `sess_id` = 'skavnhgk84712r06npem76snu3'  success  
UPDATE `sessions` SET `sess_data` = 'ABC' WHERE `sess_id` = 'skavnhgk84712r06npem76snu4'  success  

1 个答案:

答案 0 :(得分:0)

我认为这应该有用。

$data = array(
           'title' => $title,
           'name' => $name,
           'date' => $date
        );
$this->db->where('id', $id);
$this->db->update('mytable', $data); 

如需更多参考,请访问此网站:

http://ellislab.com/codeigniter/user-guide/database/active_record.html