$_post 的问题,不知道变量


issue with $_post, does not know the variable

我想检查我的 $_post['name'] 有什么问题,所以我想检查一下里面有什么,但它说这个变量没有定义。这个问题是这个问题的简化。

messageform_view:

<div id="content">
<?php $this->load->helper('form'); ?>
<?php echo form_open("HomeController/insert_message"); ?>
    <p>
        <label for="name">Name: </label>
        <input type="text" name="name" id="name" value="" size="30" />
    </p>
    <p>
    <input type="submit" value="Submit" />
    </p>
<?php echo form_close(); ?>
</div>

message_model.php:

<?php 
class Message_model extends CI_Model {
    public function add_message()
    {
    }
}
?>

主控制器:

<?php
class HomeController extends CI_Controller
{
    public function index () {     
    } 
     public function insert_message()
    {           
        print_r($_POST['name']);
     }
}
?>

错误:

A PHP Error was encountered
Severity: Notice
Message: Undefined index: name
Filename: controllers/HomeController.php
Line Number: 22

从视图中删除以下代码

<?php $this->load->helper('form'); ?>

在应用程序/配置/自动加载中.php添加以下代码

$autoload['helper'] = array('form');

在控制器中检查表单的值

print_r($this->input->post());die;

视图部分使用它:你会得到答案

<form action="<?php echo base_url('HomeController/insert_message'); ?>" method="post">
    <p>
     <label for="name">Name: </label>
    <input type="text" name="name" id="name" value="" size="30" />
    </p>
    <p>
     <input type="submit" value="Submit" />
    </p>
    </form>

在控制器中,将名称字段获取为

$name = $this->input->post('name');