我正在使用一个名为MY_Model.php的codeigniter库,该模型中有以下函数,
public function update($primary_value, $data, $skip_validation = FALSE)
{
$valid = TRUE;
if($skip_validation === FALSE)
{
$valid = $this->_run_validation($data);
}
if($valid)
{
$this->skip_validation = FALSE;
return $this->db->where($this->primary_key, $primary_value)
->set($data)
->update($this->_table);
}
else
{
return FALSE;
}
}
然后我用以下代码执行该函数,
$update = array('last_logged_in', date("Y-m-d H:i:s"));
if($this->ci->users_model->update($query[0]['user_id'], array('last_logged_in', date("Y-m-d H:i:s"))))
{
$this->session->set_flashdata('success', 'You have successfully been logged in');
switch($query['user_type_id'])
{
case 1:
redirect('/candidate/dashboard');
break;
case 2:
redirect('/employer/dashboard');
break;
case 3:
redirect('/admin/dashboard');
break;
}
}
但是我收到以下错误,
发生数据库错误
错误号码:1054
'字段列表'中的未知列'0'
更新
users
SET0
= 'last_logged_in',1
='2011-04-28 21:06:51'在哪里user_id
='2'
答案 0 :(得分:0)
尝试更改
array('last_logged_in', date("Y-m-d H:i:s"))
到
array('last_logged_in' => date("Y-m-d H:i:s"))
答案 1 :(得分:0)
我认为您需要将其更改为:
if($this->ci->users_model->update($query[0]['user_id'], array('last_logged_in' => date("Y-m-d H:i:s"))))
请注意,数组现在是关联的 - 你在那里有一个逗号,使其编入索引。