我试图在form_open()
中设置表单的操作。在那里我指定了登录文件(存在于控制器中,它也是基本控制器文件),其功能名为validate
。但该页面提供 404 object not found 错误。我做错了什么? anchor('login/signup','Create Account');
中也出现同样的错误。我希望我能解释一下自己。
/controller/login.php
<?php
class Login extends CI_Controller
{
function index()
{
$this->load->helper('HTML');
$this->load->view('includes/header');
$this->load->view('login_form');
}
function signup()
{
$this->load->view('signup_form');
}
function validate()
{
}
}
?>
/view/login_form.php
<div class="form_login">
<?php echo heading("Login",1); ?>
<?php
echo form_open('login/validate');
echo form_input('username','','placeholder ="Enter Username"');
echo form_password('pass','','placeholder ="Enter Password"');
echo form_submit('sub','Submit');
echo br();
echo anchor('login/signup','Create Account');
echo form_close();
?>
</div>
答案 0 :(得分:0)
您也可以创建表单 -
<div class="form_login">
<form method="post" action="<?php echo base_url(); ?>login/insert">
<input type="text" name="username" placeholder ="Enter Username">
<input type="password" name="pass" placeholder ="Enter Password">
<input type="submit" value="Submit"></br>
<a href="<?php echo base_url(); ?>login/signup">Create Account</a>
</form>
</div>
答案 1 :(得分:0)
您没有加载表单助手。如果在类构造函数中加载模型,帮助程序等,则它们可用于类中的每个方法。更容易进入application / config / autoload.php并将它们放在那里。但这里有一个示例构造函数和一堆可能发生的不同事情,包括加载你的助手......
class Login extends CI_Controller{
function __construct() {
// this is always required
parent::__construct();
// load some helpers
$this->load->helper('html');
$this->load->helper('url');
$this->load->helper('form');
// load some libraries
$this->load->library('form_validation');
$this->load->library('database');
$this->load->library('session');
// load models
$this->load->model( 'superusers' );
$this->load->model( 'dailyword' );
// create a variable with $this that can be used anywhere
$this->devmessage = '' ;
// call a method and return something that can be used anywhere
$this->wordoftheday = $this->dailyword->returnword() ;
}
所以现在Login类中的任何方法,以及Login类调用的任何Model或View文件都将具有所有上述帮助程序,库,模型等。拼写助手名称大写也可能适用于某些系统,但我建议始终将它们命名为小写。