2017-05-14 7 views
0

に表示されていないが、私のログイン方法は、ここに私が検証エラーのためのフラッシュメッセージを設定しています、コントローラ内部にある -検証flashdataエラーがここでCodeIgniterの

public function login(){ 
    $this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[3]'); 
    $this->form_validation->set_rules('password', 'Password', 'trim|required|min_length[3]'); 

    if($this->form_validation->run() == FALSE){ 
     $data = array(
      'errors' => validation_errors() 
     ); 
     $this->session->set_flashdata($data); 
     redirect('home'); 
    } 
} 

ここでIDこれらのエラーを表示するコード -

<?php if($this->session->flashdata('errors')): ?> 
    <?php echo $this->session->flashdata('errors');?> 

<?php endif; ?> 

何が間違っているのか分かりません。エラーメッセージが表示されません。

+0

このようにしてみてください。$ this-> session-> set_flashdata( 'errors'、validation_errors());配列としてではなく単一の項目として扱います。 –

+0

ドキュメントをもう一度確認してください。ビューをロードする必要があります。フォームが失敗した場合にリダイレクトする必要はありません。セッションを設定した後、elseブロックでリダイレクトを行います。 – Tpojka

答えて

0
i hope work this process 
if($this->form_validation->run() == FALSE){ 
     $this->session->set_flashdata('name','Your message'); 
     redirect('home'); 
     } 
    <?php if($this->session->flashdata('name')): ?> 
     <?php echo $this->session->flashdata('name');?> 

    <?php endif; ?> 
関連する問題