Php 调用未定义的函数form_close()

Php 调用未定义的函数form_close(),php,codeigniter,Php,Codeigniter,我是PHP Codeigniter框架的新手。 我的代码中有这个错误,我不能考虑这个错误。 使用登录验证和flashdata(消息),但未获得正确的输出,代码中有错误 视图:- <div class="row justify-content-center"> <div class="col-6"> <h1><?php echo $title ?></h1> &

我是PHP Codeigniter框架的新手。 我的代码中有这个错误,我不能考虑这个错误。

使用登录验证和flashdata(消息),但未获得正确的输出,代码中有错误

视图:-

<div class="row justify-content-center"> 
  <div class="col-6">
        <h1><?php echo $title ?></h1>
        <?php if($this->session->flashdata('message')) { ?>
          <div class="alert alert-danger"><?php echo $this->session->flashdata('message')?></div>
        <?php }?>
        <?php echo form_open('user/login', array('id' => 'loginForm') ) ?>
          <div class="form-group" >
            <input type="text" name="email" id="email" class="form-control" placeholder="email" />
            <?php echo form_error('email','<div class="error">','</div>') ?>
          </div>
          <div class="form-group" >
            <input type="password" name="password" id="password" class="form-control" placeholder="password" />
            <?php echo form_error('password','<div class="error">','</div>') ?>
          </div>
          <div class="form-group" >
            <input type="submit" name="submit" value="Login" class="btn btn-primary" />
          </div>
          <?php echo form_close(); ?>
  </div>


您必须在
Autoload.php
中加载表单帮助程序,就像
$Autoload['helper']=array('form'),在表单操作中,您提到了
用户/登录
路径,但下面您加载了
管理员
控制器。

您遇到了什么错误,在这里,当您的登录代码位于管理员控制器中时,您似乎正在向用户控制器发送表单数据。您需要加载(或自动加载)表单帮助程序以启用
表单打开()
表单关闭()
<?php
function __construct() {
    parent::__construct();
    $this->load->library('form_validation');
    
} 

public function login()
{
    $data['title'] = "Login";

    
    $this->form_validation->set_rules('email','email','trim|required|valid_email');
    $this->form_validation->set_rules('password','password','required');
    
    
    $this->form_validation->set_error_delimiters('<div class="error">','</div>');

 if($this->form_validation->run() == false)
 {
    $this->load->view('admin/login', $data);
    $this->load->view('home/index',$data );
 }
 else{
     $email = $this->security->xss_clean($this->input->post('email'));
     $password = $this->security->xss_clean($this->input->post('password'));
     
     $admin = $this->admin_model->login($email,$password);

     if($admin){
         $userdata = array(
             'id' => $admin->id,
             'first_name' => $admin->first_name,
             'last_name' => $admin->last_name,
             'authenticated' => TRUE

         );

         $this->session->set_userdata($userdata);

         redirect('dashboard');
    
     }
     else{
         $this->session->set_flashdata('message','Invalid email or Password');
         redirect('admin/login');
     }
 }
}
public function logout()
{
    $this->session->sess_destroy();
    redirect('admin/login');
}