2016-05-03 1 views
0

Actuellement, je travaille sur une application de panier simple. J'ai un formulaire qui accepte l'entrée de l'utilisateur (quantité) pour un article. Lors de la soumission, je suis pris à l'action suivante (juste le atm-cadre):FuelPhP: Comment puis-je ajouter à une variable de session (tableau/carte)?

public function action_setquantity($flower_id) { 
$doit = Input::post('doit'); 
$tf = Input::post('tf'); 
//$tf is ok (validated), create the cart data 

$mycart[$flower_id] = $tf; 

//This is only allowing 1 item to be written to Session var 'cart' 
Session::set('cart', $mycart); 

return Response::redirect("/show/cart"); } 

Maintenant, mon problème est de créer un tableau/cartographie des paires quantité/article. Comme le code est maintenant, la variable de session 'chariot' va être remplacée chaque fois que l'utilisateur utilise le formulaire. Comment puis-je corriger la logique actuelle pour ajouter continuellement des mappages à cette variable de session.

Répondre

1

Vous pouvez simplement récupérer la valeur de la session en premier et l'ajouter avant de la réaffecter.

// Default to an empty array so we have a sensible value to work with. 
$mycart = Session::get('cart', []); 

// TODO: Modify cart data as required here. 

// When done reassign the cart data to the session. 
Session::set('cart', $mycart); 
+0

Ceci est la meilleure réponse –