将按钮登录更改为登录导航条引导后退出


Change button login to logout after login o navbar bootstrap

我试图使登录按钮在引导导航栏,但我发现很难当我尝试登录后,然后进入登录按钮变成注销?有谁能帮我吗?

<li class="nav navbar-nav navbar-right">
    <a href="<?php echo base_url(); ?>login/login" class="btn btn-default btn-outline btn-circle collapsed">Login</a>   
</li>   

Codeigniter 3

当你在登录功能的成功部分登录时,你应该创建一些会话userdata,在那里你可以存储一些用户名或任何你需要的数据。然后在视图中,你应该能够像下面这样使用会话

<?php if ($this->session->userdata('username') == TRUE) {?>
    <li class="nav navbar-nav navbar-right">
        <a href="<?php echo base_url('login/logout'); ?>" class="btn btn-default btn-outline btn-circle collapsed">logout</a>   
    </li>   
<?php } else { ?>
    <li class="nav navbar-nav navbar-right">
        <a href="<?php echo base_url('login/login'); ?>" class="btn btn-default btn-outline btn-circle collapsed">Login</a>   
    </li>   
<?php } ?>

注销或销毁会话

同样在你的base_url()你可能需要包括index.php

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

当你创建会话时,你需要加密密钥http://randomkeygen.com/在application/config/config.php上的编码器在第313行并且一旦你有了加密密钥自动加载会话。

设置会话数据http://www.codeigniter.com/user_guide/libraries/sessions.html

$newdata = array(
        'username'  => 'johndoe',
        'email'     => 'johndoe@some-site.com',
        'logged_in' => TRUE
);
$this->session->set_userdata($newdata);

样品控制器

<?php 
class Login extends CI_Controller {
   public function index() {
      $this->login();
   }
    public function login() {
       $this->load->library('form_validation');
       $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 {
            $newdata = array(
               'username'  => $this->input->post('username'),
               'logged_in' => TRUE
            );
            $this->session->set_userdata($newdata);
            redirect('success-controller');
       }
    }
    public function logout() {
       // Also unset your user data here
       redirect('login');
    }
}

表单验证用户指南

http://www.codeigniter.com/user_guide/libraries/form_validation.html

自动装载

$autoload['helper'] = array('array', 'date', 'file', 'form', 'html', 'url');