我是codeigniter的新手,并使用flashdata显示来自控制器的信息。但是,刷新视图或移动到其他页面后,flashdata不会自动清除,然后仍然保留。请帮忙。
这是我在控制器中的代码:
$this->session->set_flashdata('_flash_message', 'Thanks for your subscription.');
redirect(site_url('cp/subscribe'), 'refresh');
在视图中:
<?php echo $this->session->flashdata('_flash_message'); ?>
我将XAMPP用于localhost,已经关闭了缓存模式。
答案 0 :(得分:0)
尝试
在控制器上
$this->session->set_flashdata('flash_message', 'Thanks for your subscription.');
redirect(base_url('cp/subscribe'));
观看
<?php if ($this->session->flashdata('flash_message') {
<?php echo $this->session->flashdata('flash_message');?>
<?php }?>
答案 1 :(得分:0)
在视图中,您需要添加if语句以检查是否已设置flashdata。刷新浏览器时,它将不会被设置,因此消息不会重新出现。
<?php if($this->session->flashdata('_flash_message')) : ?>
<?php echo '<p>' .$this->session->flashdata('_flash_message'). '</p>'; ?>
<?php endif; ?>