我在尝试创建简单的登录系统时遇到问题。这是它的工作原理,并显示我的问题。
登录页面包含一个简单的表单,并打开一个表单给控制器' Verify_login'。此Verify_login控制器执行一些基本的表单验证,然后查询数据库以检查用户是否输入了正确的凭据。提交此表单后,它会自动将用户定向到website.com/verify_login,而我希望将其保留为website.com/login。我无法使用routes文件解决此问题,因为这会导致两个页面都重定向到同一页面。有人有解决方案吗?我正在使用Codeigniter框架。
的login.php
<div class="content-block">
<h1>Login</h1>
<div class="content-inner-block">
<?php echo validation_errors(); ?>
<?php echo form_open('Verify_login'); ?>
<div class="login wrap">
<input type="text" name="username" id="user" placeholder="Username">
<input type="password" name="password" id="pass" placeholder="**********">
<input type="submit" value="Log in">
</div>
<?php echo form_close("\n")?>
</div>
Verify_login.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Verify_login extends CI_Controller{
public function index(){
$this->load->model('User_model');
$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('pages/login');
return false;
}
$result = $this->User_model->login($this->input->post('username'), $this->input->post('password'));
if($result){
echo 'loggedin';
} else {
echo 'wrong';
}
}
}
?>