У меня две таблицы:
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-инъекции.