2010-12-14 4 views
0

このデータを取得してCodeigniterでインクリメントするにはどうすればよいですか?codeigniter array

$_SESSION['cart'][$_GET[id]]++; 
+1

ようになります:$値をretrive = $ this-> session-> userdata( 'entery'); $ this-> session-> set_userdata( 'some_name'、 'some_value')を設定します。 –

+3

CodeIgniterにはショッピングカートクラスもあります。これは、あなたがしようとしていることを達成するのに役立ちます。 http://codeigniter.com/user_guide/libraries/cart.html – Malachi

答えて

3

CIは$ _GET配列を破壊するので、あなたが行うことができます。この3がIDのURLセグメントである

$_SESSION['cart'][$this->uri->segment(3)]++;

。しかし、私はマラキの推薦するショッピングカートクラスに目を向けるでしょう。ドキュメントから

$data = array(
       'rowid' => 'b99ccdf16028f015540f341130b6d8ec', 
       'qty' => 3 
      ); 

$this->cart->update($data); 
0

それは眉をひそめていますが、あなたは本当にあなたが常に次の操作を行うことができます$の_GETのVAR使用する場合:

parse_str($_SERVER['QUERY_STRING'],$_GET); 

を私はURIを使用してに固執うRossで示されるようにセグメントを作成するか、コントローラー関数のパラメーターとして 'id'を指定します。多分このような

0

...

$カート=の$ this - >セッション - >ユーザデータ( 'カート'); $ cart [$ this-> uri-> segment(3)];

0

$ this-> input-> get()はもはや邪魔されません。

0

このようにすることができます。

お使いのコントローラ機能に変数を渡すことによって、あなたのコントローラ機能は、私は、このリンクヘルプhttp://codeigniter.com/user_guide/libraries/sessions.htmlを願っています。この

function my_function($id='') 
{ 
    //Your code goes here 
    $my_cart = $this->session->userdata('cart'); 
    $my_data = $my_cart[$id]; 

}