Обновить и присоединиться к запросу вместе в codeigniter?

Обновление данных при объединении двух таблиц, но это дает ошибку в условии, где
Могу ли я использовать соединение и обновить вместе в запросе?

вот мой код

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

Фатальная ошибка: Uncaught Error: вызов неопределенной функции where () в
C: \ xampp \ htdocs \ P_Display \ application \ models \ Pmodel.php: 103 стека
трассировка: # 0
C: \ XAMPP \ HTDOCS \ P_Display \ Application \ контроллерах \ user.php (1 24):
Pmodel-> update_model (‘1’, Array) # 1
C: \ XAMPP \ HTDOCS \ P_Display \ \ Система ядра \ CodeIgniter.php (360):
Пользователь-> updateSave (‘1’) # 2 C: \ xampp \ htdocs \ P_Display \ index.php (202):
require_once (‘C: \ xampp \ htdocs …’) # 3 {main} добавлено
C: \ xampp \ htdocs \ P_Display \ application \ models \ Pmodel.php в строке 103

предложение where дает мне ошибку, и правильно ли использовать этот запрос?

4

Решение

Исправить это как

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

К

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

ОБНОВИТЬ

Обновить таблицу, как это ..

$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');
4

Другие решения

Спасибо @HekMet за ваш ответ

теперь я получил код, но по-другому взглянул на него и дал мне знать, если вы нашли с ним какие-то проблемы ..

 public function update_model($id,array $data)
{
$uname=$data['uname'];
$email=$data['email'];
$password=$data['password'];
$address=$data['address'];
$mobilenumber=$data['Mobilenumber'];
$job=$data['Job'];

$query=
$this->db->set('user_data.email',$email);
$this->db->set('user.password',$password);
$this->db->set('user_data.mobilenumber',$mobilenumber);
$this->db->set('user_data.job',$job);
$this->db->set('user.uname',$uname);

$this->db->where('user_data.id',$id);
$this->db->where('user.id',$id);
$this->db->update('user_data JOIN user ON user_data.id= user.id');return $query;}

так как это давало ошибку, что моя переменная неоднозначна, мне нужно просто установить их значения отдельно.

3

$this->db->join() не входит в $this->db->update() вот почему он вышел с ошибкой в ​​запросе.

Если вы хотите использовать join() в обновлении вы должны изменить его.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector