Hello!
Im getting invalid username/password when login and I believe the reason is because login/register not connecting to database. Here is code within controllers:
1.
<?php
class Form extends CI_Controller {
public function index()
{
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->load->database('citable');
$this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[5]|max_length[50]');
$this->form_validation->set_rules('password', 'Password', 'trim|required|min_length[2]');
$this->form_validation->set_rules('passconf', 'Password Confirmation', 'trim|required|matches[password]');
$this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('register_view');
}
else
{
$this->load->view('login_view');
}
}
}
2.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Login extends CI_Controller {
public function __construct() {
parent::__construct();
//load the required libraries and helpers for login
$this->load->helper('url');
$this->load->library(['form_validation','session']);
$this->load->database(citable);
//load the Login Model
$this->load->model('LoginModel', 'login');
}
public function index() {
//check if the user is already logged in
$logged_in = $this->session->userdata('logged_in');
if($logged_in){
//if yes redirect to welcome page
redirect(base_url().'welcome');
}
//if not load the login page
$this->load->view('header');
$this->load->view('login_page');
$this->load->view('footer');
}
public function loginUser() {
$this->form_validation->set_rules('username','Username','required');
$this->form_validation->set_rules('password','Password','required');
if ($this->form_validation->run() == FALSE) {
$this->load->view('login_view');
} else {
$this->load->model('Model_user');
$reslt = $this->Model_user->checkLogin();
if ($reslt != false) {
//set session
$username = $_POST['username'];
$password = sha1($_POST['password']);
//fetch from databse
$this->db->select('citable');
$this->db->from('username');
$this->db->where(array('username' => $username , 'password' => $password));
$query = $this->db->get('citable')->result_array();
$user = $query->row();
//if use exists
if ($user->username) {
//login message
$this->session->set_flashdata("success","You are logged in");
//set session variables
$_SESSION['user_logged'] = TRUE;
$_SESSION['username'] = $user->username;
//redirect
redirect('user/profile','refresh');
}
} else {
//wrong credentials
$this->session->set_flashdata('error','Username or Password invalid!');
redirect('Home/Login');
}
}
}
//logging out of a user
public function logoutUser() {
unset($_SESSION);
redirect('Home/Login');
}
}
Im slowly getting to goal but keeping getting minor snags. Can anyone help?
,
Mekaboo