Codeigniter中找不到页面错误

时间:2015-04-08 05:44:18

标签: php codeigniter

我正在尝试启用用户注册并在codeigniter中登录。 但是得到错误

  

致命错误:调用未定义的函数form_open()   第10行的C:\ xampp \ htdocs \ myfolder \ application \ views \ signup_form.php

任何建议 我的网址看起来像这样

/localhost/myfolder/index.php/signup /

我创建了控制器

<?php
class signup extends CI_Controller {

    function Home(){
        parent::Controller();
        $this->load->library('form_validation');
    }

    public function index(){

            $this->load->view('signup_form');


    }
}
?>

signup_form

<!DOCTYPE html>
<html>
<head>
<title>Create Contact Form Using CodeIgniter</title>
<link href='http://fonts.googleapis.com/css?family=Marcellus' rel='stylesheet' type='text/css'>
<link href="http://localhost/CodeIgniter/css/styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<?php echo form_open('main_controller'); ?>
<h1>Create Contact Form Using CodeIgniter</h1>
<?php echo form_label('Student Name :'); ?>
<?php echo form_input(array('id' => 'dname', 'name' => 'dname')); ?>
<?php echo form_label('Student Email :'); ?>
<?php echo form_input(array('id' => 'demail', 'name' => 'demail')); ?>
<?php echo form_label('Student Mobile No. :'); ?>
<?php echo form_input(array('id' => 'dmobile', 'name' => 'dmobile')); ?>
<?php echo form_label('Student Address :'); ?>
<?php echo form_input(array('id' => 'daddress', 'name' => 'daddress')); ?>
<?php echo form_submit(array('id' => 'submit', 'value' => 'Submit')); ?>
<?php echo form_close(); ?>
</div>
</body>
</html>

4 个答案:

答案 0 :(得分:5)

试试这个

function Home() {
    parent::Controller();
    $this->load->library('form_validation');
    $this->load->helper('form');
}

public function index() {
    $this->load->view('signup_form');
}

答案 1 :(得分:4)

您需要加载form帮助器才能使用form_open方法。

$this->load->helper("form");

修改

如果只需要索引方法,只需将其放入其中即可。如果你需要在控制器中的很多方法中,只需将它放在构造函数中。尽量避免加载不必要的文件。它可以减少内存消耗。

希望它对你有用。

答案 2 :(得分:3)

请试试这个。

<?php
    class Signup extends CI_Controller {
         public function __construct() {
                parent::__construct();
                $this->load->helper('form');
                $this->load->library('form_validation');
        }

        public function index() {
            $this->load->view('signup_form');
        }
    }
?>

答案 3 :(得分:0)

你需要在父类中传递辅助数组,如

$this->load->helper(array('form'));

我们大多数需要4种类型的函数来传递辅助数组

$this->load->helper(array('text','html','url','form'));

这是基本的帮助器数组url将帮助您传递base_url();