表单操作和锚点在codeigniter PHP中不起作用

时间:2015-11-21 16:06:14

标签: php codeigniter

我试图在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>

2 个答案:

答案 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文件都将具有所有上述帮助程序,库,模型等。拼写助手名称大写也可能适用于某些系统,但我建议始终将它们命名为小写。