Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Codeigniter 登录操作未加载函数_Codeigniter_Twitter Bootstrap 3_Codeigniter 2 - Fatal编程技术网

Codeigniter 登录操作未加载函数

Codeigniter 登录操作未加载函数,codeigniter,twitter-bootstrap-3,codeigniter-2,Codeigniter,Twitter Bootstrap 3,Codeigniter 2,我创建了一个登录视图,这样当用户提交数据时,它会将数据发送给auth/login 但是,当他们单击Login时,它会将他们带回一个非样式的登录页面 它也会加载仪表板视图 请参阅下面使用的代码: ./application/views/layouts/application.php 网络工作室! 现在登录 登录 ./application/models/User.php 在您的问题中,您说过url是“auth/logn”,但auth控制器中的方法是“login”。那只是个打字错误吗?因为那是个

我创建了一个登录视图,这样当用户提交数据时,它会将数据发送给auth/login

但是,当他们单击Login时,它会将他们带回一个非样式的登录页面

它也会加载仪表板视图

请参阅下面使用的代码:

./application/views/layouts/application.php


网络工作室!
现在登录
登录
./application/models/User.php


在您的问题中,您说过url是“auth/logn”,但auth控制器中的方法是“login”。那只是个打字错误吗?因为那是个打字错误。该url是指身份验证/登录。(我已经纠正了上面的拼写错误。最后一个代码(没有引导)现在还在工作吗?dashboard是您的控制器名称或功能name@MohitJainDashboard是控制器,index是函数。我已经用最近的更改更新了上面的代码示例
<!DOCTYPE html>
<html lang="en">
    <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <link rel="shortcut icon" href="images/favicon.png">
    <title>Network Studios!</title>

        <!--Core CSS -->
    <link href="styles/bootstrap/css/bootstrap.min.css" rel="stylesheet">
    <link href="styles/bootstrap/css/bootstrap-reset.css" rel="stylesheet">
    <link href="styles/font-awesome/css/font-awesome.css" rel="stylesheet" />

    <!-- Custom styles for this template -->
    <link href="styles/base/css/style.css" rel="stylesheet">
    <link href="styles/base/css/style-responsive.css" rel="stylesheet" />

    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
    <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
    <![endif]-->
 </head>   

<body class="login-body">

    <div class="container">
        <? $form_atr = array('class' => 'form-signin');?>
<?=form_open('auth/login', $form_atr)?>

        <?=isset($message) ? $message : ''?>
        <h2 class="form-signin-heading">sign in now</h2>
        <div class="login-wrap">


            <div class="user-login-info">

               <?php echo form_input(['name' => 'email', 'id' => 'email', 'class' => 'form-control', 'value' => set_value('email'), 'placeholder' => 'Email']); ?>

<?php echo form_password(['name' => 'password', 'id' => 'password', 'class' => 'form-control', 'placeholder' => 'Password']); ?>

<button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
            </div>

    <?=form_close()?>
</body>

</html>
<?php

class User extends ActiveRecord\Model 
{

    /**********************************************
     * Before saving we need to secure the password
     ***********************************************/
    function set_password($planetext)
    {
        $this->hashed_password = $this->hash_password($planetext);
    }

    /******************************************************************
     * First We need to generate a random encryption for the password
     ***************************************************************/
    private function hash_password($password)
    {
        $salt = bin2hex(mcrypt_create_iv(32, MCRYPT_DEV_URANDOM));
        $hash = hash('sha256',$salt . $password);

        return $salt . $hash;
    }


    /********************
     * Password Validation
     ********************/

    public function validate_password($password)
    {
        $salt = substr($this->hashed_password, 0, 64);
        $hash = substr($this->hashed_password, 64, 64);

        $password_hash = hash('sha256', $salt . $password);

        return $password_hash == $hash;

    }

    public static function validate_login($username, $password)
    {
        $user = User::find_by_username($username);

        if($user && $user->validate_password($password) )
        {   
            User::login($user->id);

            return $user;
        }
        else 
            return FALSE;

    }

    public static function login($user_id)
    {
        $CI = & get_instance();
        $CI->session->set_userdata('user_id', $user_id);


        }
    public static function logout ()
    {
        $CI =& get_instance();
        $CI->session->sess_destroy();
    }

}
<?php

class Auth extends CI_Controller
{

    function login()
    {
        // $data = array();

        if ($_POST)
        {
            //User Has Submitied Login Form
            $user = User::validate_login($_POST['username'], $_POST['password']);

            if ($user)
                redirect('dashboard'); // Have also tried redirect('dashboard/index'); but this failed aswell
            else 
            {
                $this->view_data['message'] = 'Invalid Login. Please check the username / password.';
            }

        }
        $this->load->view('layouts/application', $data);
    }

    function logout()
    {
        User::logout();
        redirect('login');

    }



}
class Dashboard extends MY_Controller
{
    function __construct()
    {
        parent::__construct();


    }

    function index() 
    {

        if(!$this->user)
            redirect('login');
        else
        {
            echo('This is the Dashboard <br />');
            echo($this->user->username);
        }
    }
}
<?php

class MY_Controller extends CI_Controller 
{
    var $user = FALSE;

    //Layouts / Autoview Functions
    protected $layout_view = 'application';
    protected $content_view = '';
    protected $view_data = array();

    // Call Parend Constructor
    function __construct()
    {
        parent::__construct();

        $this->user = $this->session->userdata('user_id') ? User::find($this->session->userdata('user_id')) : FALSE;

    }

    // Set Our Output
    public function _output($output)
    {

        // Set Default Content View

        if ($this->content_view !== FALSE && empty($this->content_view)) $this->content_view = $this->router->class . '/' . $this->router->method;

        // Render Content View
        $yield = file_exists(APPPATH . 'views/' . $this->content_view . EXT) ? $this->load->view($this->content_view, $this->view_data, TRUE) : FALSE;

        // Render Layout View
        if($this->layout_view)
            echo $this->load->view('layouts/' . $this->layout_view, array('yeild' => $yield), TRUE);
        else 
            echo $yield;


    }
}