Codeigniter网址显示方法

时间:2016-03-19 21:18:26

标签: php codeigniter

我创建了一个基本登录表单,其中验证仅包含字段不为空。 在控制器中,索引看起来像

$this->load->helper('form');
$this->load->view('auth/login');

这是视图

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="http://www.w3schools.com/lib/w3.css">
    <meta charset="utf-8">
    <title>LOGIN
    </title>
</head>
<body>
    <h1>Simple Login with CodeIgniter</h1>
    <?php echo form_open('login/verifylogin'); ?>
    <div class="" style="margin:0">
        <label for="username">Username:</label>
        <div class="" style="display:inline-block;margin:0">
            <?php echo form_input(['name'=>'username','class'=>'','placeholder'=>'Your username here','value'=>set_value('username')]); ?>
        </div>
            <?php echo form_error('username',"<div class='w3-text-red' style='display:inline-block'>","</div>"); ?>
    </div>
    <br/>
    <div class="">
        <?php echo form_label('Password:','pass'); ?>
        <div class="" style="display:inline-block;margin:0">
            <?php echo form_password(['name'=>'password','class'=>'','placeholder'=>'Your password here']); ?>
        </div>
            <?php echo form_error('password',"<div class='w3-text-red' style='display:inline-block'>","</div>"); ?>
    </div>
    <br/>
    <?php echo form_submit('submit', 'Login'); ?>
    <?php echo form_close(); ?>
</form>
</body>
</html>

当用户成功验证后,他被重定向到仪表板视图但在地址栏中仍然得到http://192.168.1.102/login/verifylogin(192.168.1.102是本地主机,或者特别是其运行服务器的设备地址)。 此外,如果用户将字段留空,则会向视图auth/login显示相应的错误,但地址栏会显示http://192.168.1.102/login/verifylogin

请指导我如何解决这个问题。

  1. 我是codeigniter的初学者(我也有拉格拉夫手)。

  2. 我已根据给定的指南删除了index.php文件。

  3. 我使用的是ubuntu 14.04

  4. 编辑1: - 如果用户登录失败,我不想在地址栏中显示方法名称 编辑2: - 控制器: -

    <?php
    /**
     *
     */
    class Login extends CI_Controller
    {
        public function index()
        {
            $this->load->helper('form');
            $this->load->view('auth/login');
        }
    
        public function verifylogin()
        {
            $this->load->library('form_validation');
    
            $this->form_validation->set_rules('username', 'Username', 'trim|required|alpha_numeric');
            $this->form_validation->set_rules('password', 'Password', 'required');
    
    
    
            if ($this->form_validation->run()) {
                $this->load->helper('url');
    
                $username = $this->input->post('username');
                $password = $this->input->post('password');
                $this->load->model('Loginmodel');
                if ($this->Loginmodel->login_valid($username, $password)) {
                    redirect('dashboard');
                }else {
                    $this->load->view('auth/login');
                }
            } else {
                $this->load->view('auth/login');
            }
        }
    }
    
     ?>
    

0 个答案:

没有答案