【发布时间】:2015-07-14 16:21:30
【问题描述】:
我正在尝试确定在我的模型中执行的数据库更新是否成功,最终将它的状态(成功或不成功)传递给我的视图,以便我可以适当地显示一个 div。到目前为止,只要模型更新有效,它就可以工作,但是当它不工作时它就不起作用。我正在使用 flashdata 通过控制器传递数据。
我的模特:
public function editTicket($ticket)
{
$q = $this->db->where('ticketId', $ticket['ticketId']);
$q = $this->db->update('tickets', $ticket);
$results = $this->db->affected_rows();
return $results;
}
我的控制器:
public function editExistingTicket()
{
$this->load->model('tickets');
$date = date("Y-m-d H:i:s");
$ticket = array(
'ticketId' => $this->input->post('ticketId'),
'category' => $this->input->post('category'),
'headline' => $this->input->post('headline'),
'description' => $this->input->post('description'),
'assigned' => $this->input->post('assigned'),
'status' => $this->input->post('status'),
'priority' => $this->input->post('priority'),
'lastUpdated' => $date
);
if ($this->tickets->editTicket($ticket)){
$this->session->set_flashdata('edit', '1');
} else {
$this->session->set_flashdata('edit', '0');
}
}
我的观点(相关部分):
var edited = '<?php echo $this->session->flashdata('edit'); ?>';
if (edited == '1') {
$('#editMessage').slideDown('slow');
setTimeout(function(){$('#editMessage').slideUp('slow')}, 3000);
//sessionStorage.setItem('edit', '0');
} else if (edited == '2') {
$('#editFailMessage').slideDown('slow');
setTimeout(function(){$('#editFailMessage').slideUp('slow')}, 3000);
//sessionStorage.setItem('edit', '0');
}
关于我做错了什么有什么想法吗?
感谢您的帮助!
【问题讨论】:
标签: php html codeigniter web