【发布时间】:2014-09-24 14:34:05
【问题描述】:
我想在保存后将页面重定向到必须具有最后插入的 id(主键)的新页面
$crud = new grocery_CRUD();
// $crud->set_theme('datatables');
$crud->set_table('visitor');
$crud->set_subject('Visitor');
$crud->required_fields('id');
$crud->columns('event_type', 'name', 'number', 'email', 'company_name', 'designation');
$crud->set_relation('event_type', 'event_type', 'event');
$crud->field_type('visitor_type', 'dropdown', array('1' => 'Visitor', '2' => 'Exhibitor', '3' => 'Staff'));
$crud->callback_before_insert(array($this, 'insert_data_callback'));
$crud->callback_after_insert(array($this, 'after_insert'));
$crud->change_field_type('date', 'invisible');
$crud->set_lang_string('insert_success_message',
'Your data has been successfully stored into the database.<br/>Please wait while you are redirecting to the list page.
<script type="text/javascript">
window.location = "'.site_url('visitor').'/'.'barcode/'.$this->db->insert_id().'";
</script>
<div style="display:none">
'
);
window.location = "'.site_url('visitor').'/'.'barcode/'.$this->db->insert_id().'"; 是主要的。
$this->db->insert_id() 总是返回 0
我也尝试使用 callback_after_insert 函数并添加了以下代码,但是这也总是返回 0
function after_insert($post_array, $lastInsertedId) {
print_r($post_array);
echo " hello this is called ". $lastInsertedId. " ". $this->db->insert_id();
}
但这似乎不起作用,我只想要最后插入的 id 并将其重定向到新页面。 我已经浏览了杂货杂货网站和 stackoverflow 来解决这个问题,并尝试了几乎所有可能的选项,但似乎没有任何效果。
【问题讨论】:
标签: php codeigniter grocery-crud