微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 在codeigniter中一起更新和加入查询?

在连接两个表时更新数据,但它在where条件中给出错误
我可以在查询中一起使用join和update吗?

这是我的代码

public function update_model($id,array $data)
{

//$textArea=$data['textdata'];
$this->db->join('user_data', 'user.id = user_data.id');
$this->db>where('user_data.id',$id);
$this->db->update('user_data',$data);

$query=$this->db->get();
return $query->result();
}

我在我的MysqL中得到了如下的错误

Fatal error: Uncaught Error: Call to undefined function where() in
C:\xampp\htdocs\P_display\application\models\Pmodel.PHP:103 Stack
trace: #0
C:\xampp\htdocs\P_display\application\controllers\user.PHP(1‌​24):
Pmodel->update_model(‘1’, Array) #1
C:\xampp\htdocs\P_display\system\core\CodeIgniter.PHP(360):
User->updateSave(‘1’) #2 C:\xampp\htdocs\P_display\index.PHP(202):
require_once(‘C:\xampp\htdocs…’) #3 {main} thrown in
C:\xampp\htdocs\P_display\application\models\Pmodel.PHP on line 103

where子句给我一个错误,使用这个查询是否正确?

解决方法:

纠正它为

$this->db>where('user_data.id',$id);//see here missing arrow

$this->db->where('user_data.id',$id);

UPDATE

像这样更新表..

$sql = "UPDATE user_data AS ud JOIN user AS u ON ud.id = u.id SET ud.col1 = val1,ud.col2 = val2 WHERE ud.id = $id";
$this->db->query($sql);

要么

$this->db->join('user_data', 'user.id = user_data.id');
$this->db->set($data);
$this->db->where('user_data.id',$id);
$this->db->update('user_data');

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐