1

我正在使用CI_Session 类的这个扩展。使用 TW Bootstrap 创建闪存数据和样式。但是,当我将“成功”消息传递给视图时,它根本没有加载。

我运气不错,但并不高兴。

我的控制器看起来像这样..

// Set form Validation
    $this->form_validation->set_rules('title', 'Title', 'required|trim|is_unique[films.title]');

    if($this->form_validation->run() == FALSE)
    {
        $data['page_title'] = 'Add New DVD';

        $this->load->view('_partials/_header', $data);

        $this->load->view('_partials/_menu');

        $data['genres'] = $this->genre_model->get_genres();

        $data['classification'] = $this->classification_model->get_classifications();

        $this->load->view('create', $data);

        $this->load->view('_partials/_footer'); 
    }
    else
    {
        // Insert into DB
        $film_data = array
        (
            'title' => $this->input->post('title'),
            'genre_id' => $this->input->post('genre'),
            'classification_id' => $this->input->post('classification')
        );

        $this->film_model->create($film_data);

        $this->session->set_success_flashdata('feedback', 'Success message for client to see');

        redirect('dvd');

我的观点是....

<?php $this->session->flashdata('feedback'); ?>

因此,当我将新项目插入数据库时​​,模型运行,重定向运行但“set_success_flashdata”没有。

MY_session 库设置为根据 CI 的默认配置自动加载。

我如何让这个该死的 Flash 消息显示 ::( ?

4

2 回答 2

12

它不是set_success_flashdata它只是set_flashdata

控制器变化:

$this->session->set_flashdata('feedback', 'Success message for client to see');

视图原样:

echo $this->session->flashdata('feedback');

希望这对您有所帮助。谢谢!!

于 2012-07-19T05:07:46.890 回答
1

虽然我看不到这个特定扩展的意义,但答案很简单。

您没有回显会话库中的数据。

回显 flashdata 的正确方法是这样的:

<?php echo $this->session->flashdata('feedback'); ?>
于 2012-07-18T21:48:51.683 回答