Sessions dans un caddie

Signaler
Messages postés
167
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
24 mai 2010
-
Messages postés
44
Date d'inscription
vendredi 18 octobre 2002
Statut
Membre
Dernière intervention
8 décembre 2005
-
bonjour !
voila j'ai quelques difficultes avec des sessions dans un caddie.
je vous explique, actuellement on ajoute un article dans le panier et on peut changer sa quantité ... pas de problemes.
la ou ca se gate, C que je souhaiterais greffer aux articles du caddie une taille (definie dans la page precedante)appellée $taille.
mais je ne sais pas trop comment m'y prendre pour inserer ce parametre dans le tableau caddie
voici mon code actuel:
@ $nouvel_article = $_POST['idarticle'];
@ $taille_article = $_POST['taille'];

  if($nouvel_article)
{
    //
    if(!isset($_SESSION['caddy']))
    {
      $_SESSION['caddy'] = array();
      $_SESSION['produits'] = 0;
      $_SESSION['prix_total'] ='0.00';
  $_SESSION['prix_general'] ='0.00';
    }
//
    if(isset($_SESSION['caddy'][$nouvel_article]))
      $_SESSION['caddy'][$nouvel_article]++;
    else 
      $_SESSION['caddy'][$nouvel_article] = 1;

    $_SESSION['prix_total'] = calculer_prix($_SESSION['caddy']);
    $_SESSION['produits'] = calculer_produits($_SESSION['caddy']);
}


voila j'espere avoir été clair
merci de votre aide

1 réponse

Messages postés
44
Date d'inscription
vendredi 18 octobre 2002
Statut
Membre
Dernière intervention
8 décembre 2005

Salut, ton problème est structural...
J'ai 2 solution a te proposer :
1 ) Tu a bien une variable de session qui s'appelle 'caddy' pour qui ne pas maintenir une autre qu'i s'appellerai 'taille'.
Ex: Ton caddy en session sera représenté par ses deux variables
MS_USER_CADDY et MS_USER_CADDY_SIZE

avant toute chose tu testera ton composant:

start_session();

if(empty($_SESSION[MS_USER_CADDY])){
$_SESSION[MS_USER_CADDY] = array();
$_SESSION[MS_USER_CADDY_SIZE] = 0;
}

.....

tu peux ensuite utilser sans soucis

2) si tu conais un peu les objets, tu peux également créer une classe caddy. Mais il faut un minum de connaissance pour éviter les surprises
Ex:

[version php4]

class MsUserCaddy {
var $size;
var $content;
function MsUserCaddy(){
$this->size = 0;
$this->content = array();
}
function addArcticle($art){
. ...
}
}
phanatic