Home > Backend Development > PHP Tutorial > Extending Codeigniter's user login verification_PHP tutorial

Extending Codeigniter's user login verification_PHP tutorial

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-07-13 10:34:07
Original
704 people have browsed it

You need to modify My_Controller.php and the login verification module User.php of the controller. The code is as follows:

My_Controller.php

class MY_Controller extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        /*判断是否登录,判断当前URL是否是auth/login*/
        if ( ! $this->tank_auth->is_logged_in()
                && ( $this->router->fetch_class() != 'auth' && $this->router->fetch_method() != 'login'))
        {
            $redirect = $this->uri->uri_string();
        
            if ( $_SERVER['QUERY_STRING'])
            {
                $redirect .= '?' . $_SERVER['QUERY_STRING'];
            }
            /*跳转到用户登陆页面,指定Login后跳转的URL*/
            redirect('auth/login?redirect='.$redirect);
        }    
    }
}
Copy after login

User.php

class User extends MY_Controller 
{
    function login()
    {

        if ($this->tank_auth->is_logged_in()) {                                    // logged in
            redirect('/');

        } else {
            //other codes here......
            /*判断是否有redirect信息*/
            $data['redirect'] = isset($_GET['redirect']) ? $_GET['redirect'] : '/';

            if ($this->form_validation->run()) {                                // validation ok
                if ($this->tank_auth->login(
                        $this->form_validation->set_value('login'),
                        $this->form_validation->set_value('password'),
                        $this->form_validation->set_value('remember'),
                        $data['login_by_username'],
                        $data['login_by_email'])) {                                // success
                    redirect($data['redirect']);

                } else {
                    //error handling
                }
            }
            $this->load->view("login_form")
        }
    }
}
Copy after login

Note: In login_form, please note that the form address for submitting the form is:

<?php 
	echo form_open(site_url("/auth/login?redirect=".$redirect)); 
?>
Copy after login
Copy after login

In login_form, please note that the form address for submitting the form is:

<?php 
	echo form_open(site_url("/auth/login?redirect=".$redirect)); 
?>
Copy after login
Copy after login

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/752347.htmlTechArticleYou need to modify My_Controller.php and the login verification module User.php of the controller. The code is as follows: My_Controller.php class MY_Controller extends CI_Controller{ public function __construct...
Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template