当我登录时,它会给我“找不到错误页面”。它没有加载控制器功能。
这是我的观点文件:
<form name="loginform" action="welcome/login" method="post">
Enter User Name:
<input type="text" name="uname">
Enter Password
<input type="password" name="pass">
<input type="submit" name="login" value="Login">
这是我的登录控制器文件:
class Login extends Controller {
function Login()
{
parent::Controller();
}
function login()
{
$this->load->view('welcome_message');
}
}
这是我欢迎的控制器文件:
class Welcome extends Controller {
function Welcome()
{
parent::Controller();
}
function index()
{
$this->load->model('Loginmodel');
$this->load->view('welcome_message');
}
public function login()
{
$this->load->model('Loginmodel','login');
$info = $this->logn->login();
$this->load->view('welcome_message',$info);
}
}
你能告诉我什么是错的吗?
答案 0 :(得分:0)
您提供的代码似乎很好,所以我猜它与此有关:
<form name="loginform" action="welcome/login" method="post">
路径是相对的,只有在没有url段存在时才会起作用。如果当前网址为/hello/world
,您最终会发布到/hello/world/welcome/login
尝试完整的网址或绝对路径。例如:
<form name="loginform" action="/welcome/login" method="post">
<!-- ^^^ Note the leading forward slash -->
或者使用base_url()
作为完整网址:
<form action="<?php echo base_url(); ?>welcome/login">
您可能还会对form_open()
功能感兴趣,它会自动执行此操作。
<?php echo form_open('welcome/login'); ?>
我能看到的唯一其他事情与$this->login->login();
无关。如果您在看到“找不到页面”错误时可以确认您的网址实际是什么,那将是一个很大的帮助。