【问题标题】:codeigniter if no GET look for POST如果没有 GET 则 codeigniter 查找 POST
【发布时间】:2016-12-01 12:36:47
【问题描述】:

我有一个控制器,我可以随时通过 GET 或 POST 发送数据,但不能同时发送数据,因此我收到错误

消息:未定义的索引:用户 ID

这可能是由于 POST 或 GET 取决于未找到的。

如何添加语句,以便在未找到 POST 时查找 GET 并且不显示错误?

我的代码

      public function index()
    {

        $this->session->userdata('user_id');
        $userID = $this->session->userdata('userid');

//        var_dump($userID);
        $this->session->set_userdata('user_id', $_POST['userid']);
        $this->session->set_userdata('user_id', $_GET['userid']);

        $data['tests'] = simplexml_load_file("tests/tests.xml");
        $this->load->view('selecttest',$data);
    }

}

【问题讨论】:

标签: php codeigniter post get session-variables


【解决方案1】:

使用 $_REQUEST

http://php.net/manual/en/reserved.variables.request.php

只需检查 $_REQUEST 超全局变量中的变量

由于您使用的是 CI,因此您也可以使用 $this->input->post_get('userid', TRUE);

【讨论】:

    【解决方案2】:

    改变这个:

        $this->session->set_userdata('user_id', $_POST['userid']);
        $this->session->set_userdata('user_id', $_GET['userid']);
    

    收件人:

    $this->session->set_userdata(
        'user_id',
        (
            $this->input->get('userid') == null ? 
            $this->input->post('userid') : 
            $this->input->get('userid')
        )
    );
    

    【讨论】:

      【解决方案3】:

      你可以试试三元运算符

      $user_id = isset($_GET['userid']) && ($_GET['userid']!= '') ? $_GET['userid'] : (isset($_POST['userid']) && ($_POST['userid']!='') ? $_POST['userid'] : null);
      $this->session->set_userdata('user_id', $user_id);
      

      快速链接

      【讨论】:

        【解决方案4】:

        你可以通过做这样的事情来实现这一点。

        if($this->input->post('userid')){
         $userid=$this->input->post('userid');
        }
        else{
        $userid=$this->input->get('userid');
        }
        

        更多详情请参考此链接:https://www.codeigniter.com/user_guide/libraries/input.html

        【讨论】:

          猜你喜欢
          • 2017-06-09
          • 1970-01-01
          • 2015-08-01
          • 1970-01-01
          • 1970-01-01
          • 2011-12-25
          • 2015-04-21
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多