1

CodeIgniter でフラッシュ データに苦労しています。

私は基本的にしたい:

データベースに質問を追加する ユーザーをページにリダイレクトする 「質問が作成されました」という成功ポップアップ メッセージを表示する

これまでのところ、カテゴリをデータベースに正常に追加でき、ユーザー入力が正しく検証されていますが、ポップアップの成功メッセージを作成する方法がわかりません。(成功ビューをロードしたくありません)、元の場所にリダイレクトして、上隅などに小さなメッセージを表示するだけです。

フラッシュデータは正しい方法ですか?

コントローラ:-

 $create_data =  $this->input->post();
    if(isset($create_data['question'])){
    $this->load->model('Test_model', 'test');
    $insert_status = $this->test->insertQuestions($create_data['question']);
    if($insert_status){
            echo "Record Inserted";
        }
        else{
            echo "Insertion Failed";
        }
    }
$this->layout->view('test/create');
4

2 に答える 2

0
function insert(){
    $create_data =  $this->input->post();
    if(isset($create_data['question'])){
        $this->load->model('Test_model', 'test');
        $insert_status = $this->test->insertQuestions($create_data['question']);
        if($insert_status){
            //echo "Record Inserted";
            $this->session->set_flashdata('msg', 'Record Inserted'); //set session flash
            redirect('controller_name/insert', 'refresh');
        }
        else{
            //echo "Insertion Failed";
            $this->session->set_flashdata('msg', 'Insertion Failed'); //set session flash
            redirect('controller_name/insert', 'refresh');
        }
    }else{
        $this->layout->view('test/create');    
    }
}
?>    

表示ページ:

<p><?=$this->session->flashdata('msg')?></p>
于 2013-09-09T07:05:33.500 に答える
0

フラッシュデータは、その道のりのように思えます。次のようなことができます。

if($insert_status){
    $notification = "Record Inserted";  
} else {
    $notification = "Insertion Failed";
}

$this->session->set_flashdata('notification', $notification);
redirect('controller/method','refresh');

次に、でアクセスします

$this->session->flashdata('notification');

マニュアルは、この種の情報にとって非常に貴重な情報源です。

于 2013-09-09T07:05:37.727 に答える