Codeigniter $ this-> input-> post总是FALSE

Mj1*_*992 3 php post codeigniter

我正在尝试将httpRequest发送到codeigniter控制器函数.我正在使用REST控制台来测试该功能.我想发送3 POST变量.

  • 用户名
  • 电子邮件
  • 用户身份

这是处理请求的代码

public function NewUser()
{
    if($this->input->post())
    {
        $FID        = $this->input->post('UserID');
        $UserName   = $this->input->post('UserName');
        $Email      = $this->input->post('Email');
        echo "working";
        echo $FID;
        echo $UserName;
    }
    else
    {
        echo "not working";
    }
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.它总是输出not working.当我改变一切时,get一切都开始正常.

可能是什么问题 ?在此过程中,发布请求无法正常工作codeigniter project.

编辑

我使用以下代码创建了一个新脚本.

<?php

  var_dump($_POST);
  echo $_POST['UserName'];
  echo $_POST['FacebookID'];
  echo $_POST['Email'];
  echo "********************************";
?>
Run Code Online (Sandbox Code Playgroud)

这是说undefined index.可能是什么问题 ?请帮忙.它工作正常$_GET

Har*_*jan 10

$this->input->post() 因为你没有提到你想要使用post检索哪个值的名称而忘记返回false.在代码中更改此处:

if(isset($_POST))
Run Code Online (Sandbox Code Playgroud)

要么

  if(!empty($_POST))
Run Code Online (Sandbox Code Playgroud)

POST

你也可以这样做:

if($this->input->post('username'))//username is the name of post variable
Run Code Online (Sandbox Code Playgroud)


Him*_*dey 6

你应该试试

isset($_REQUEST) 要么 !empty($_REQUEST)

检查数据是否来了