Advertisement
bsm

User.php

bsm
Nov 13th, 2017
312
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.98 KB | None | 0 0
  1. <?php
  2. class User extends CI_Controller {
  3.  
  4.     public function __construct()
  5.     {
  6.         parent::__construct();
  7.         $this->load->model('user_model');
  8.         $this->load->helper(array('form', 'url'));
  9.         $this->load->library(array('session', 'form_validation'));
  10.     }
  11.  
  12.     public function index()
  13.     {
  14.         $this->load->view('login/template_login');
  15.     }
  16.    
  17.     public function register()
  18.     {
  19.        
  20.         $this->form_validation->set_rules('nama_lengkap', 'Nama Lengkap', 'trim|required|alpha|min_length[3]|max_length[100]');
  21.         $this->form_validation->set_rules('username', 'Username', 'trim|required|alpha|min_length[3]|max_length[50]');
  22.         $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email|is_unique[user.email]');
  23.         $this->form_validation->set_rules('password', 'Password', 'required');
  24.         //$this->form_validation->set_rules('cpassword', 'Confirm Password', 'trim|required');
  25.         $this->form_validation->set_rules('confirm_password', 'Confirm Password', 'required|matches[password]');
  26.        
  27.         $data['title'] = 'Register';
  28.        
  29.         if ($this->form_validation->run() == FALSE)
  30.         {            
  31.             $this->load->view('login/template_login', $data);
  32.  
  33.         }
  34.         else
  35.         {
  36.             if ($this->user_model->set_user())
  37.             {                            
  38.                 $this->session->set_flashdata('msg_success','Registration Successful!');
  39.                 redirect('user/register');            
  40.             }
  41.             else
  42.             {                
  43.                 $this->session->set_flashdata('msg_error','Error! Please try again later.');
  44.                 redirect('user/register');
  45.             }
  46.         }
  47.  
  48.        
  49.     }
  50.    
  51.     public function login()
  52.     {        
  53.         $email = $this->input->post('email');
  54.         $password = $this->input->post('password');
  55.        
  56.         $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email');
  57.         $this->form_validation->set_rules('password', 'Password', 'trim|required|md5');        
  58.        
  59.         $data['title'] = 'Login';
  60.        
  61.         if ($this->form_validation->run() === FALSE)
  62.         {            
  63.             $this->load->view('login/template_login', $data);
  64.         }
  65.         else
  66.         {
  67.             if ($user = $this->user_model->get_user_login($email, $password))
  68.             {  
  69.                 /*$user_data = array(
  70.                               'email' => $email,
  71.                               'is_logged_in' => true
  72.                          );
  73.                      
  74.                 $this->session->set_userdata($user_data);*/
  75.                
  76.                 $this->session->set_userdata('email', $email);
  77.                 $this->session->set_userdata('user_id', $user['id']);
  78.                 $this->session->set_userdata('is_logged_in', true);
  79.                
  80.                
  81.                 $this->session->set_flashdata('msg_success','Login Successful!');
  82.                 redirect('news');                
  83.             }
  84.             else
  85.             {
  86.                 $this->session->set_flashdata('msg_error','Email atau Password Tidak Valid!');
  87.                
  88.                 $currentClass = $this->router->fetch_class(); // class = controller
  89.                 $currentAction = $this->router->fetch_method(); // action = function
  90.                
  91.                 redirect("$currentClass/$currentAction");
  92.                 //redirect('user/login');
  93.             }
  94.         }
  95.     }
  96.    
  97.     public function logout()
  98.     {    
  99.         if ($this->session->userdata('is_logged_in')) {
  100.            
  101.             //$this->session->unset_userdata(array('email' => '', 'is_logged_in' => ''));
  102.             $this->session->unset_userdata('email');
  103.             $this->session->unset_userdata('is_logged_in');
  104.             $this->session->unset_userdata('user_id');            
  105.         }
  106.         redirect('user');
  107.     }    
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement