2012-01-30 10 views
1

$ this-> input-> post()を使用して、ビューページからポスト配列の送信を受けようとしています。しかし、CIはそれを行うことができないようです。何かご意見は?助けのためのcodeigniterはポスト配列を受け取ることができますか?

コントローラ

public function pub() 
    { 
    // the postArray is an array: $postArray['t1']=test1, $postArray['t2']=test2 
    $go=$this->input->post('postArray');  
    foreach ($go as $test){ 

    echo $test['t1']; //show nothing 
    echo $test['t2']; //show nothing 

    } 

//the following code would work if I sent the $postArray as a string variable 

public function pub() 
    { 
    // the postArray is an string variable $postArray='test1' 
    $go=$this->input->post('postArray');  

    echo $go; //show test1 

     } 

感謝。

UPDATE:私のビューページでjQueryのコード

//postArray is an array 
    $.post('<?=base_url()?>/project_detail/pub', {'postArray':postArray},function(go) 
     { 
      alert(go); 
     }) 

答えて

5

は、あなたのHTMLをチェックし は以下の持っていますか?

Array (

    [0] => something... 
    [1] => something... 
) 

名前キーの代わりに、インデックス付きの配列を含めたい場合は、あなたが使用することができます:あなたは一例

<input type="text" value="something..." name="postArray[]" /> 
<input type="text" value="something..." name="postArray[]" /> 

出力print_r($this->input->post())のために、配列を作成するname属性に[]合成を含める必要がありますこの方法:print_r($this->input->post())

<input type="text" value="something..." name="postArray[t1]" /> 
<input type="text" value="something..." name="postArray[t2]" /> 

出力:

Array (

    [t1] => something... 
    [t2] => something... 
) 
+0

マイアップデートをご覧ください。 jquery .postを使用してデータを送信しています。私はそれが配列だと確信しています。 +1。 :D – FlyingCat

+0

NVM私はそれを得た。ありがとうlolwut。 – FlyingCat

関連する問題