2016-12-01 1 views
1

にはGETの外観は、私は私がエラーCodeIgniterのPOST

メッセージを取得、私はこのために、GETまたはPOSTのいずれかを介していつでも両方ではなく1つのいずれかのデータ送信されているコントローラを持っていない場合:未定義のインデックスを:ユーザーID

これは、POSTまたはGETによるもので、見つからないものが原因です。

POSTを見つけられずにGETを探してもエラーが表示されないようにするには、どのように文を追加できますか?

MY CODE

 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); 
    } 

} 
+1

チェックリファレンスをhttps://www.codeigniter.com/user_guide/libraries/input.html#CI_Input::post_get – Rishi

答えて

0

変更この:

$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') 
    ) 
); 
0

あなたは三項演算子で試すことができます。

$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); 

クイックリンク

0

あなたはこの種の何かをすることによって、これを達成することができます。

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

詳細については、このリンクを参照してください:post_get入力ヘルパー ためhttps://www.codeigniter.com/user_guide/libraries/input.html

関連する問題