Quantcast
Channel: Últimos conteúdos
Viewing all articles
Browse latest Browse all 14190

CodeIgniter - sistema de login

$
0
0

Olá galera, to começando com codeigniter, mas estou com um probleminha, ao logar, ele não sai do if de senha e e-mail incorretos, os campos do form estão corretos e do banco, podem me ajudar?

 

 

Aqui está a controller

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class login extends CI_Controller {

	public function entrar(){
		
		$mensagem = null;

		if($this->input->post('acessar') === 'acessar'){

			 $this->form_validation->set_rules('user', 'email', 'required|valid_email');
			 $this->form_validation->set_rules('senha', 'senha', 'required|min_length[5]|max_length[40]');

			 if($this->form_validation->run() === true){

			 	$this->load->model('LoginModel');

			 	$email = $this->input->post('user');
			 	$senha = md5($this->input->post('senha'));

			 	$loginExistente = $this->LoginModel->verificaLogin($email,$senha);

			 	if($loginExistente === true){

			 		$usuario = $loginExistente;

			 		$session = array(
			 					'user' => $usuario['email'],
			 					'nome' => $usuario['nome'],
			 					'logado' => true
			 					);

			 		$this->session->set_userdata($session);

			 		redirect('administracao/index');

			 	}else{

			 		$mensagem = array('class' => 'danger',
			 						'mensagem' => 'Login inválido, e-mail ou senha incorretos.'.$email.' '.$senha
			 					);

			 	}

			 }else{

			 	$mensagem = array('class' => 'danger',
			 						'mensagem' => 'Foram encontrados erros no login </br>'. validation_errors()
			 					);
			 }
		}

		$dados = array('alerta' => $mensagem);

		$this->load->view('login/index', $dados);
	}

	public function sair(){
		$this->session->sess_destroy();

		redirect('login/entrar');
	}

}

 e aqui está a model

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class LoginModel extends CI_Model {

	public function verificaLogin($email,$senha){

		$this->db->from('useradmin');
		$this->db->where('email', $email);
		$this->db->where('senha', $senha);
		$usuario = $this->db->get();

		if($usuario->num_rows() > 0){
			$user = $usuario->result_array();
			return $user[0];
		}else{
			return false;
		}
	}

}

Fico agradecida pela ajuda.


Viewing all articles
Browse latest Browse all 14190

Trending Articles