我正在用Codeigniter 3构建一个支持系统。当ticket状态为0时,没有问题,但当我想将当前状态设置为1时,我得到一个错误。我的数据库“TNYINT”长度1默认值0
如果我把它作为0发送,这是可以的,但当管理员张贴这一点,我必须使它1。
/*** Reply Ticket Post */
public function admin_reply_ticket_post()
{
/// Admin Authority Checkup Getting Started
adminCheck();
// Admin Authority Check End
$data = array(
'ticket_id' => $this->input->post('ticket_id'),
'admin_id' => $this->session->userdata('adminid'),
'first_name' => $this->session->userdata('first_name'),
'last_name' => $this->session->userdata('last_name'),
'message' => $this->input->post('message')
);
$this->db->insert('tickets_sub', $data);
// Make Ticket Status "in the transaction"
$data = array(
'id' => $this->input->post('ticket_id'),
'status' => 1 ,
);
$this->db->update('tickets', $data);
1条答案
按热度按时间v8wbuo2f1#
现在,您正在给
tickets
表中的all记录一个新的id
和status
,这就是为什么您会得到“Duplicate”错误。您需要添加一个WHERE
子句来指定要更新的记录:或者更短:
请访问:https://www.codeigniter.com/userguide3/database/query_builder.html#updating-data