显示多个flashdata Codeigniter视图

时间:2017-01-23 10:00:55

标签: php twitter-bootstrap codeigniter

我想使用bootstrap警报显示2个flashdata。一个是成功的,一个是失败的。

<?php if($this->session->flashdata('msg')) : ?>
     <div class="alert alert-success" role="alert" align="center">
        <?=$this->session->flashdata('msg')?>
     </div>
<?php endif; ?>

我尝试制作2个,结果,在插入提交数据成功时总是显示FAILED。

<?php if($this->session->flashdata('msg')) : ?>
     <div class="alert alert-success" role="alert" align="center">
        <?=$this->session->flashdata('msg')?>
     </div>
<?php endif; ?>

<?php if($this->session->flashdata('error')) : ?>
     <div class="alert alert-success" role="alert" align="center">
        <?=$this->session->flashdata('error')?>
     </div>
<?php endif; ?>
编辑:这是我的控制器,对不起,如果它有点疯狂LOL

public function dosignup(){

    if ($this->daftar_model->dftrlogin() == TRUE){
        $//this->daftar_model->dftrlogin();
        $this->session->set_flashdata('msg','REGISTERED');
         redirect(base_url('signup'));}
    else{
            // Form validation failed, set error
            $this->session->set_flashdata('error','FAILED');
            redirect(base_url('signup'));
        }
    }

1 个答案:

答案 0 :(得分:0)

因为你正在使用if else期望 闪存数据的一个结果 其他 如果

,你会加倍

例如

if(strlen('john') == 4){
   $this->session->set_flashdata('msg','REGISTERED');
}

if(strlen('johns') == 5){
   $this->session->set_flashdata('error','REGISTERED');
}

   redirect(base_url('signup'));

这只是一个示例,这个将返回两个闪存数据 一个是msg和错误