2011-05-23 4 views
0

cakephpセッションに複数の値を保存したいと思います。実際には、セッションに配列を格納するのが好きなので、ユーザーがカートに追加している製品を追跡することができます。私はセッションのような値を格納しようとしています。cakephpセッションの複数の値/データ

$ return_data = $ this-> Product-> read(array( 'id'、 'prod_name'、 'prod_sku'、 'prod_price')、$ pid [0]); $ this-> Session-> write( 'カート'、$ return_data);

ここでは、特定の製品に対してデータベースからデータを取得し、その情報をセッションに格納しています。上記のコードは正常に動作していますが、1つの例外を除いて、ユーザーが2番目の製品をカートに追加すると、1番目の製品のデータが2番目の製品のデータを上書きしてしまいます。だから、私は、他の製品データを上書きしないで、セッション中に多くの製品を追加する方法が必要です。

私はCAKEPHP 1.3フレームワークを使用しています。 ウィンドウ用のWAMP。 PHPバージョン:5.3.4 のMySQL:5.1.53 のApache:2.2.17

答えて

2

あなたが何かを試みることができる:

$count = count($this->Session->read('Cart')); // count the number of products you already have in the cart 
// insert next: 
$this->Session->write('Cart.'.$count, $this->Product->findById($pid[0], array('id','prod_name','prod_sku','prod_price'))); 

お知らせ "カート" の後にドットを、あなたの配列を与えます。

+0

ありがとうPawelMysiorあなたのソリューションは私にとって素晴らしい仕事でした。それは本当に簡単で良い解決策でした。 – Capri82

関連する問題