Advertisement
Guest User

Untitled

a guest
Mar 31st, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.96 KB | None | 0 0
  1. <?php
  2. class Controllers_login extends CI_Controller{
  3. //コンストラクタの定義
  4. public function __construct(){
  5. parent::__construct();
  6. $this->load->database();
  7. $this->load->library('session');
  8. $this->load->helper('url');
  9. $this->load->helper('form');
  10.  
  11.  
  12.  
  13. }
  14.  
  15. public function index(){
  16. //メインページに移行
  17. $this->load->view('views_mainpage');
  18.  
  19.  
  20. }
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. public function login(){
  28.  
  29. //ログイン画面で送信ボタンが押されたかを確認する。
  30. if(!isset($_POST['send'])){
  31. $this->load->view('views_login');
  32. }
  33. else{
  34. //送信ボタンが押されたことが確認できた場合
  35. $this->load->library('form_validation');
  36. $this->form_validation->set_rules('email','mailaddress','required');
  37. $this->form_validation->set_rules('password','mypassword','required');
  38.  
  39. //$data=array();
  40.  
  41. //もし、空欄の項目があったらfalse
  42. if($this->form_validation->run()==FALSE){
  43. //$condition['no_data']=isset ($this->form_validation) && $this->form_validation->run()==FALSE;
  44. //viewに未入力ですと表示する。
  45. $data['no_data']=TRUE;
  46. $this->load->view('views_login',$data);
  47. //$this->load->view('views_login');
  48. }
  49.  
  50. else{
  51. $email=$this->input->post('email');
  52. $password=$this->input->post('password');
  53.  
  54. $this->load->model('models_login');
  55. //ログインチェックをする。データベースに存在するか。
  56. $is_login=$this->models_login->checkLogin($email,$password);//!!!
  57. //is_login = checkLogin(pwd,mail) //boolean
  58.  
  59. //データベースに組み合わせが存在した場合
  60. if($is_login==TRUE){
  61. //if($is_login==TRUE){
  62. //メールアドレスとパスワードから全てのユーザ情報を取得する。
  63. $user=$this->models_login->getUserFromLogin($email,$password);//!!!
  64. //$user = getUserFromLogin($email,$password) //array
  65.  
  66. //idをセッションに保存する。set_userdataの引数は配列なのでarray型にする。
  67. $this->session->set_userdata(array('users'=>$user['id']));
  68. //$this->session->set_userdata( array("user_id"=>$user['id']) );
  69.  
  70.  
  71. //Call id from session
  72. //$sess_id = $this->session->userdata('id');
  73. //セッションのIDを取得する。
  74. //$session_id =array('id_key'=>$user_id['id']);
  75.  
  76.  
  77. //IDからユーザ情報(今回は名前)を取得する。
  78. $id=$user['id'];
  79. $data['user']=$this->models_login->getUser($id);
  80. //$data['user']=$user;
  81. //var_dump($data);
  82.  
  83. //$dataをviewに渡す。
  84. $this->load->view('views_mainpage',$data);
  85. }
  86. else{
  87. $data['no_match']=TRUE;
  88. //viewで正しいデータを表示してくださいと表示する。
  89. $this->load->view('views_login',$data);
  90. }
  91. }
  92. }
  93. }
  94.  
  95. public function logout(){
  96. //セッションを破棄する。
  97. $this->session->sess_destroy();
  98. //コントローラにリダイレクトして最初に戻る。
  99. redirect("controllers_login");
  100.  
  101. }
  102. }
  103. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement