【问题标题】:codeigniter - Flashdata not clearingcodeigniter - Flashdata 未清除
【发布时间】:2016-03-03 04:30:27
【问题描述】:

我是 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,已经关闭了缓存模式。

【问题讨论】:

    标签: codeigniter session model-view-controller


    【解决方案1】:

    试试

    在控制器上

    $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 }?>
    

    【讨论】:

      【解决方案2】:

      在视图中你需要添加一个 if 语句来检查是否设置了 flashdata。刷新浏览器时不会设置,因此消息不会再次出现。

      <?php if($this->session->flashdata('_flash_message')) : ?> 
         <?php echo '<p>' .$this->session->flashdata('_flash_message'). '</p>'; ?>
      <?php endif; ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-21
        • 2022-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-28
        • 1970-01-01
        相关资源
        最近更新 更多