PHP $ _POST函数中缺少参数

时间:2009-01-26 13:03:16

标签: php codeigniter

我正在使用CodeIgniter通过$_POST请求将一些参数传递给我的PHP页面,并在我正在阅读的PHP页面中。

$foo = $this->input->post('myParam');

如果myParam请求中存在$_POST参数,则会为$foo分配myParam值。如何在myParam请求中检查$_POST 未通过

2 个答案:

答案 0 :(得分:4)

我用谷歌搜索'codeigniter输入帖'。

第一个结果是this

从该文件:

$this->input->post('some_data');
     

如果您尝试的项目,该函数返回FALSE(布尔值)   检索不存在。

所以你需要这样做:

if ($foo===false) {
   // do something if it's not set
}

答案 1 :(得分:0)

我认为最好的方法是使用表单验证类对数据进行预处理。记录在案here

你会做类似的事情:

function index()
{
    $this->load->helper(array('form', 'url'));
    $this->load->library('form_validation');

    $this->form_validation->set_rules('myParam', 'myParam', 'required');
            if ($this->form_validation->run() == FALSE)
    {
        $this->load->view('myform');
    }
    else
    {
        $this->load->view('formsuccess');
    }
}

如果您的验证失败,它会将您发回表单,您必须使用数据重新填充它,有一种方法可以执行此操作(请参阅文档)。如果通过,则可以确保$this->input->post('myParam');将返回值。