Обновление активной записи Codeigniter с соединением

У меня две таблицы:

table1: id, user_id, poll_id, options_id

table2: id, poll_id, голосов

столбцы – это целое число, и я хочу изменить значение, соединяя таблицы с некоторыми предложениями:

$this->db ->set('votes', 'votes - 1', FALSE) ->join('table1', 'poll_votes.options_id = table2.id') ->where('poll_id', $row) ->where('user_id', $id) ->update('table2'); 

Я получаю эту ошибку:

 Номер ошибки: 1054
 Неизвестный столбец 'user_id' в 'where clause'
 UPDATE `table2` SET vote = votes - 1 WHERE` poll_id` = '9' AND `user_id` = '1'

Попробуй это:

 $this->db->set('votes', 'votes - 1', FALSE) $this->db->where('table1.user_id',$id); $this->db->where('table2.poll_id',$row); $this->db->update('table1 join table2 ON table1.poll_id= table2.poll_id'); 

попробуйте это. Это сработало для меня !!!

 $data = array( 'a.ED_FName' => $_POST['firstname'], 'a.ED_MName' => $_POST['middlename'], 'a.ED_LName' => $_POST['lastname'], 'a.ED_Location' => $_POST['location'], 'a.ED_Company' => $_POST['company'], 'b.EMD_Department' => $_POST['department'] ); $this->db->set($data); $this->db->where('a.EmpID', $empID); $this->db->where('b.EmpID', $empID); $this->db->update('tbl_employeedetails as a, tbl_employeementdetails as b'); 

С наилучшими пожеланиями, TUSHAR NIRAS

Обновить:

Примечание. Никогда не используйте глобальные массивы, как $ _POST, $ _GET, содержащие данные запроса пользователя напрямую без проверок безопасности. Это может привести к серьезным проблемам, таким как SQL-инъекции.