Sessions dans un caddie

cs_attentio Messages postés 167 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 24 mai 2010 - 22 oct. 2004 à 02:32
phanatic Messages postés 44 Date d'inscription vendredi 18 octobre 2002 Statut Membre Dernière intervention 8 décembre 2005 - 22 oct. 2004 à 19:09
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

phanatic Messages postés 44 Date d'inscription vendredi 18 octobre 2002 Statut Membre Dernière intervention 8 décembre 2005
22 oct. 2004 à 19:09
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
0
Rejoignez-nous