Skip to main content

[help] Ga bisa Login :(

April 2, 2011 by fjr89

fjr89's picture

tolong yang paham,ane dibantuin ya..
apa ada yang salah,kog gak bisa login...

ini controllernya

class Login extends Controller{
	function Login(){
		parent::Controller();
                $this->load->library('session');
                $this->load->model('login_model');
	}
 
	function index(){
                    $username = $this->input->post('username');
                    $password = $this->input->post('password');
                    if($username!=null and $password!=null){
                    $cek=$this->login_model->cek_user($username, $password);
                        if($username == "admin")
                        {
                            $this->load->view("home_admin");
                        }else if($username == "direktur")
                        {
                            $this->load->view("home_direktur");
                        }
                        else if($username == "pegawai")
                        {
                            $this->load->view("home_kasir");
                        }
                    }else{
                            $this->load->view('login');
                    }
	}
         function logout(){
                $this->session->unset_userdata('username');
		$this->session->sess_destroy();
		$data['pesan']="* anda telah logout";
		$this->load->view('login');
	}
 
}

trus ini modelnya :

class login_model extends Model{
 
	function login_model(){
 
		parent::Model();
	}
 
	function cek_user($username, $password){
		$query = $this->db->query("SELECT * FROM user where username='$username' and password='$password'");
                $cek=false;
                if($query->num_rows()==1){
                    $cek=true;
                }else{
                    $cek=false;
                }
                return $cek;
        }
 
        function getUser($username, $password){
                $query = $this->db->query("SELECT * FROM user where username='$username' and password='$password' ");
                return $query->row();
        }
 
 
}

tiap kali login,slalu balik lagi ke form loginnya...
monggo kalo ada yang bisa ngasi solusi
thks :)

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

coba ane ubah dikit fungsi

April 4, 2011 by zawaruddin, 5 days 11 hours ago
Comment: 7915

zawaruddin's picture

coba ane ubah dikit fungsi index pada controller

function index(){
  $this->load->view('login');
}
 
function login(){
  $username = $this->input->post('username');
  $password = $this->input->post('password');
  if($username!=null and $password!=null){
    $cek=$this->login_model->cek_user($username, $password);
    if($cek){  // klo user ma passwordnya benar
      if($username == "admin"){
        $this->load->view("home_admin");
      }else if($username == "direktur"){
        $this->load->view("home_direktur");
      }else if($username == "pegawai"){
        $this->load->view("home_kasir");
      }
    }else{ // klo user ma passwordnya salah
      $this->load->view('login');
    }
  }else{
    $this->load->view('login');
  }
}

trus untuk viewnya... di ganti, action methodnya ke fungsi login, bukan k fungsi index...

uda kog gan

April 2, 2011 by fjr89, 6 days 22 hours ago
Comment: 7905

fjr89's picture

ternyata ada sdikit salah di controller n viewnya :)

Karena view login,

April 2, 2011 by cahndeso, 1 week 3 hours ago
Comment: 7904

cahndeso's picture

Karena view login, home_admin, home_direktur dan home_kasir tidak disertakan, saya coba menebak-nebak saja ya...

  1. pastikan bahwa form login, input type text dan passwordnya mempunyai name=username dan password.
  2. saya coba membuat form loginnya... tentu dengan ketentuan diatas (point 1), jika saya isikan sembarang dalam arti bukan username admin, direktur ataupun pegawai, maka ketika di submit, tidak akan tampil apa-apa... tidak ada view yang di load... karena kondisi
    if($username!=null and $password!=null), padahal formnya saya isi misal username=cahndeso password=cahndeso, tentu tidak akan null, maka sy dapatkan hanya halaman kosong.
  3. Jika saya isi salah satu saja... form login akan ditampilkan ulang...
  4. Jika saya isi dengan salah satu user (admin/direktur/pegawai), meski passwordnya tidak sesuai sekalipun, view-nya akan tetap ditampilkan.... karena memang tidak ada kondisi yang mengharuskan itu... lihat kode anda hanya:
    $cek=$this->login_model->cek_user($username, $password);
    dibawahnya tidak ada pengecekan atas hasilnya (true / false)... jadi biarpun hasil nya false, tetap dia akan memanggil view-nya sesuai dengan if yang ada dibawahnya...
  5. Ini tebakan lagi... apakah di viewnya ada pengecekan session...? misal:
    if(!$this->session->userdata('username')) {
    redirect("login");
    }
    jika ya.. maka akan selalu kembali ke halaman login... karena di controller anda tidak ada pengisian data session sesudah $cek..

Monggo dipun check lagi... apakah tebakan saya mendekati.... atau mungkin anda mau menampilkan masing-masing view-nya... jadi nanti tebak-tebakan dari member lain yang mau bantu bisa lebih mantap....

Kepada teman-teman lain yang meminta bantuan untuk di lihat kesalahannya dimana, lebih baik jika controller, model, dan view-nya ditampilkan... jadi member lain yang mau nebak lebih mudah...

Ok.. semoga membantu...

Happy Coding..

Cahndeso

Premium Drupal Themes by Adaptivethemes