Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.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
Php codeigniter引导登录表单问题_Php_Codeigniter_Twitter Bootstrap - Fatal编程技术网

Php codeigniter引导登录表单问题

Php codeigniter引导登录表单问题,php,codeigniter,twitter-bootstrap,Php,Codeigniter,Twitter Bootstrap,我做这件事已经有一段时间没有用了。我对codeigniter引导登录有问题。基本上这就是我所拥有的: login.php-controller <?php if (!defined('BASEPATH')) die(); class Login extends Main_Controller { function __construct(){ parent::__construct(); } public function index() { $this-&g

我做这件事已经有一段时间没有用了。我对codeigniter引导登录有问题。基本上这就是我所拥有的:

login.php-controller

 <?php if (!defined('BASEPATH')) die();
 class Login extends Main_Controller {

 function __construct(){
    parent::__construct();
 }

 public function index()
 { 
  $this->load->view('include/header');
  $this->load->view('login_view');
  $this->load->view('include/footer');
 }

 public function process(){
    // Load the model
    $this->load->model('login_model');
    // Validate the user can login
    $result = $this->login_model->validate();
    // Now we verify the result
    if(! $result){
        // If user did not validate, then show them login page again
        $this->index();
    }else{
        // If user did validate, 
        // Send them to members area
        redirect('home');
    }        
}

}

想必

 class Login extends CI_Controller {
除非已经有主控制器扩展CI

想必

 class Login extends CI_Controller {

除非您的主控制器已经扩展了CI,否则如果您没有使用.htaccess删除此处显示的index.php,请尝试以下操作

<?php echo base_url('index.php/login/process');?>

如果您没有使用.htaccess删除此处显示的index.php,请尝试以下操作

<?php echo base_url('index.php/login/process');?>

尝试更换

<?php echo base_url('login/process');?>
别忘了前面的斜杠。这只是一个猜测,因为我们没有提供有关您设置的足够信息

编辑::

注意:请先阅读我的评论

首先在autoload.php加载会话库中。然后在控制器中修改process()函数,如下所示:

public function process(){
   $this->load->model('login_model');
   $result = $this->login_model->validate();
   if(! $result){
       $this->index();
   }else{
      $data = array(
          'username'    => $this->input->post('username'),
          'is_logged_in'    => true
   );

   $this->session->set_userdata($data);
   redirect('home');
}
然后在home.php控制器中:

function __construct()
    {
        parent::Controller();
        $this->is_logged_in();
        }

function is_logged_in()
    {
        $is_logged_in = $this->session->userdata('is_logged_in');

        if(!isset($is_logged_in) || $is_logged_in != true)
        {
            redirect('login');
        }
    }
您需要设置会话,以便成员区域知道用户已登录。您可以在config.php中管理会话长度和其他属性

如果有帮助,请告诉我。

尝试更换

<?php echo base_url('login/process');?>
别忘了前面的斜杠。这只是一个猜测,因为我们没有提供有关您设置的足够信息

编辑::

注意:请先阅读我的评论

首先在autoload.php加载会话库中。然后在控制器中修改process()函数,如下所示:

public function process(){
   $this->load->model('login_model');
   $result = $this->login_model->validate();
   if(! $result){
       $this->index();
   }else{
      $data = array(
          'username'    => $this->input->post('username'),
          'is_logged_in'    => true
   );

   $this->session->set_userdata($data);
   redirect('home');
}
然后在home.php控制器中:

function __construct()
    {
        parent::Controller();
        $this->is_logged_in();
        }

function is_logged_in()
    {
        $is_logged_in = $this->session->userdata('is_logged_in');

        if(!isset($is_logged_in) || $is_logged_in != true)
        {
            redirect('login');
        }
    }
您需要设置会话,以便成员区域知道用户已登录。您可以在config.php中管理会话长度和其他属性


如果有帮助,请告诉我。

服务器产生了什么错误?在此服务器上找不到请求的URL。参考页面上的链接似乎错误或过时。请将错误告知该页的作者。为了安全起见,你真的应该考虑一下。我建议使用for Codeigniter,因为它可以为您完成所有这些任务。服务器产生的错误是什么?在此服务器上找不到请求的URL。参考页面上的链接似乎错误或过时。请将错误告知该页的作者。为了安全起见,你真的应该考虑一下。我建议使用for Codeigniter,因为它可以为您完成所有这些事情?基本上-Apache/Php记录触发的是什么?您可以删除:您可以加载index.Php吗?基本上-Apache/Php记录了什么?您可以删除以下几个问题吗。您使用的是什么版本的codeigniter?您是否使用.htaccess?您正在尝试从url中删除index.php吗?根据您对@azngunit81的回答,我相信您的设置不正确。适用于我,但它会重定向回登录页面:(好的,在这种情况下,您需要使用
,但您真正缺少的是设置会话。您验证凭据,但下一页不知道。请参阅上面的我的编辑。我将在接下来的10分钟内从该评论中发布两个问题。您使用的是什么版本的codeigniter?是否使用.htaccess?是否尝试删除e index.php from url?根据您对@azngunit81的回答,我相信您设置不正确。对我来说是可行的,但它会重定向回登录页面:(好的,在这种情况下,您需要使用
,但您真正缺少的是设置会话。您验证凭据,但下一页不知道。请参阅上面的我的编辑。我将在接下来的10分钟内发布此评论,它是否不使用此验证?与其重定向回登录页,不如使用某种回音进行测试我试着回显,效果很好,但当我将其重定向到home时,它不断返回logintry,将重定向更改为header(“Location:/home.php”);同时检查并确保您的会话变量已存储。它是否正在验证?与其重定向回登录页面,不如使用某种回音对其进行测试。我尝试回音,但效果良好,但当我将其重定向到主页时,它不断返回logintry,更改重定向到标题(“Location:/home.php”);还要检查并确保存储了会话变量