Codeigniter输入post方法返回空数组


codeigniter input post method returns empty array?

我正在尝试创建一个数据条目,控制器输入数据,显示数据并确认任何编辑,然后使用方法将其提交给模型。

问题是,在加载function post_data()中的模型时,$this->input->post()的值返回一个空数组。

我正在输入返回到get_data函数的数据,然后在视图中的data.php中显示它。使用

data.php in view post data给post_data方法

<form id='form'  action="<?php echo base_url("welcome/post_data"); ?>" method="POST" style="display:inline;">           
<input type="text" name="xyz" value="<?php echo $this->input->post("xyz") ?>" />

控制器

protected $arr;
public function index(){
    $this->load->view('index/index');
    // $this->load->library('Controllerlist');
    // print_r($this->controllerlist->getControllers());
}
public function get_data(){
    echo "matoercod";
    $this->load->view("index/data");        
}
public function post_data(){
$this->load->model("form1","form",TRUE);
 print_r($this->input->post());
    $blue=$this->form->insert_data($this->arr);
    print_r($blue);
    if($blue){
     echo "Successfully added to database"; 
    }
}}

为什么print_r()方法返回一个空数组?$this->input->post()在post_data方法中返回空数组。如果我是对的$this->input->post()应该是全局的所有方法在控制器CI类

您的input标签在form中没有name属性。

<form id='form'  action="<?php echo base_url("welcome/post_data"); ?>" method="POST" style="display:inline;">           
    <input name="xyz" type="text" value="<? php echo $this->input->post("xyz") ?>" />
</form>
编辑:

此外,input标签以错误的方式关闭(在value属性之前关闭)。

<input type="text name="xyz" value="<? php echo $this->input->post("xyz") ?>" />

如果你正在加载视图data.phpget_data:

public function get_data(){
    echo "matoercod";
    $this->load->view("index/data");        
}

那么你如何访问get_data url?如果你只是在浏览器中输入它,那么你不是张贴你正在获取,所以$this->input->post是总是将是一个空数组。

我不太清楚你是如何调用get_data方法的,但你可能应该尝试改变它,以便它更仔细地构造你想要在任何视图中显示的数据,它加载

public function get_data(){
    $view_data = array(
        "xyz" => "here is some value" // you could get this value from anywhere
    );
    $this->load->view("index/data", $view_data);
}

然后在你的视图data.php你想要引用的只是$xyz而不是$this->input->post("xyz"):

<form id='form'  action="<?php echo base_url("welcome/post_data"); ?>" method="POST" style="display:inline;">           
<input type="text" name="xyz" value="<?php echo $xyz; ?>" />

注意视图加载函数的第二个参数。它是一个数组,数组中的每个关联键都将在视图中扩展为一个变量。