如果我重新加载或刷新页面,我希望能够销毁我的消息。我只希望显示消息是否来自我的网站网址。
然后说如果我按F5键或鼠标刷新页面,那么消息就会消失。
我怎么能做到这一点。我使用用户代理显示第一条消息。重新加载/刷新页面时仍显示消息。
if ($this->agent->is_referral() == site_url('admin/users_group/edit' .'/'. $this->uri->segment(4))) {
$data['success'] = '<i class="fa fa-check-circle"></i> You have successfully modifed users group';
} elseif ($_SERVER['PHP_SELF']) {
$data['success'] = '';
} else {
$data['success'] = '';
}
您可以使用flashdata来执行此类工作。
设置闪烁消息在控制器上 使用以下
$this->session->set_flashdata('msg','Your Message');
并可以使用以下方法获取此消息
$this->session->flashdata('msg');
在控制器表单的成功部分,我设置了一些用户数据。我本可以使用闪存数据来完成,但更喜欢我添加的索引部分的用户数据
public function edit() {
$this->load->library('form_validation');
$this->form_validation->set_rules('name', 'User Group Name', 'required');
$this->form_validation->set_rules('user_group_id', 'User Group Id', 'required');
$this->form_validation->set_rules('permission[modify]', '', 'callback_validate');
if ($this->form_validation->run($this) == FALSE) {
$this->getForm();
} else {
$this->load->model('admin/user/model_user_group');
$this->model_user_group->editUserGroup($this->uri->segment(4), $this->input->post());
$data = array(
'success' => 'Congratulations you have successfully added' .' '. "<strong>" . ucwords(str_replace('_', ' ', $this->router->fetch_class())) .' '. $this->input->post('name') . "</strong>"
);
$this->session->set_userdata($data);
redirect('admin/users_group');
}
}
public function index() {
$this->load->library('paginations');
$this->load->model('admin/user/model_user_group');
$data['title'] = "Users Group";
$success = $this->session->userdata('success');
if (isset($success)) {
$data['success'] = $this->session->userdata('success');
$this->session->unset_userdata('success');
} else {
$data['success'] = '';
}
$this->load->view('template/user/users_group_list.tpl', $data);
}
查看中
<?php if ($success) { ?>
<div class="alert alert-success"><i class="fa fa-check-circle"></i> <?php echo $success; ?>
<button type="button" class="close" data-dismiss="alert">×</button>
</div>
<?php } ?>