Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Controllers_login extends CI_Controller{
- //コンストラクタの定義
- public function __construct(){
- parent::__construct();
- $this->load->database();
- $this->load->library('session');
- $this->load->helper('url');
- $this->load->helper('form');
- }
- public function index(){
- //メインページに移行
- $this->load->view('views_mainpage');
- }
- public function login(){
- //ログイン画面で送信ボタンが押されたかを確認する。
- if(!isset($_POST['send'])){
- $this->load->view('views_login');
- }
- else{
- //送信ボタンが押されたことが確認できた場合
- $this->load->library('form_validation');
- $this->form_validation->set_rules('email','mailaddress','required');
- $this->form_validation->set_rules('password','mypassword','required');
- //$data=array();
- //もし、空欄の項目があったらfalse
- if($this->form_validation->run()==FALSE){
- //$condition['no_data']=isset ($this->form_validation) && $this->form_validation->run()==FALSE;
- //viewに未入力ですと表示する。
- $data['no_data']=TRUE;
- $this->load->view('views_login',$data);
- //$this->load->view('views_login');
- }
- else{
- $email=$this->input->post('email');
- $password=$this->input->post('password');
- $this->load->model('models_login');
- //ログインチェックをする。データベースに存在するか。
- $is_login=$this->models_login->checkLogin($email,$password);//!!!
- //is_login = checkLogin(pwd,mail) //boolean
- //データベースに組み合わせが存在した場合
- if($is_login==TRUE){
- //if($is_login==TRUE){
- //メールアドレスとパスワードから全てのユーザ情報を取得する。
- $user=$this->models_login->getUserFromLogin($email,$password);//!!!
- //$user = getUserFromLogin($email,$password) //array
- //idをセッションに保存する。set_userdataの引数は配列なのでarray型にする。
- $this->session->set_userdata(array('users'=>$user['id']));
- //$this->session->set_userdata( array("user_id"=>$user['id']) );
- //Call id from session
- //$sess_id = $this->session->userdata('id');
- //セッションのIDを取得する。
- //$session_id =array('id_key'=>$user_id['id']);
- //IDからユーザ情報(今回は名前)を取得する。
- $id=$user['id'];
- $data['user']=$this->models_login->getUser($id);
- //$data['user']=$user;
- //var_dump($data);
- //$dataをviewに渡す。
- $this->load->view('views_mainpage',$data);
- }
- else{
- $data['no_match']=TRUE;
- //viewで正しいデータを表示してくださいと表示する。
- $this->load->view('views_login',$data);
- }
- }
- }
- }
- public function logout(){
- //セッションを破棄する。
- $this->session->sess_destroy();
- //コントローラにリダイレクトして最初に戻る。
- redirect("controllers_login");
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement