PhP - Tableau associatif ds Variable SESSION

Guillaume -  
 Guillaume -
Bonjour,

J'aimerez vous faire part de mon petit problème du jour :

Je n'arrive pas intégrer un tableau associatif dans une variable de SESSION.

Mon Code :

$_SESSION['Panier'][] = array(
'PanierJeux' => $Panier[0],
'PanierPlateForme' => $Panier[1],
'PrixJeux' => $Panier[2],
'Qte' => 1);

$Panier est un tableau qui contient diverses information d'un produit sélectionné.

Mon problème : Ce code marche très bien lors d'un premier ajout.
Soit :
$_SESSION['Panier'][0]['PanierJeux'] = $Panier[0]
$_SESSION['Panier'][0]['PanierPlateForme'] = $Panier[1]
$_SESSION['Panier'][0]['PrixJeux'] = $Panier[2]
$_SESSION['Panier'][0]['Qte'] = 1

Mais lorsque je veux ajouter plusieurs produits, Cela donne quelque chose comme :

$_SESSION['Panier'][0] = $Panier[0]; (Produit 2)
$_SESSION['Panier'][1] = $Panier[1]; (Produit 2)
$_SESSION['Panier'][2]['PanierJeux'] = $Panier[0]; (Produit1)
$_SESSION['Panier'][2]['PanierPlateForme'] = $Panier[1] (Produit1)
$_SESSION['Panier'][2]['PrixJeux'] = $Panier[2]; (Produit1)
$_SESSION['Panier'][2]['Qte'] = 1; (Produit1);

Je n'arrive pas bien à comprendre pourquoi ce code ne marche pas.

Dans mes hypothèse : L'instruction [] qui permet de créer une nouvelle occurrence d'un tableau ne marcherais pas dans mon cas ??

4 réponses

  1. le père
     
    Bonsoir

    Je n'avais guère de doutes mais je viens quand même de faire un essai d'ajout de tableau dans la variable $_SESSION. Cela marche parfaitement.

    Comment fais-tu vraiment pour insérer tes 3 tableaux successifs (dans une boucle, dans 3 appels de pages consécutifs...) et avec quel code visualises-tu le résultat ?
    1
  2. Guillaume
     
    Merci, pour votre réponse.

    Mes tests étaient effectués au lycée. De retour chez moi, j'ai retesté la bête. A mon grand étonnement, le programme marche !

    Voici un extrait du var_dump de $_SESSION :

    array(1) {  
    ["Panier"]=>  
    array(21) {  
        [0]=>  
        array(4) {  
          ["PanierJeux"]=>  
          string(16) "Empire Total War"  
          ["PanierPlateForme"]=>  
          string(3) "Wii"  
          ["PrixJeux"]=>  
          string(2) "59"  
          ["Qte"]=>  
          int(1)  
        }  
        [1]=>  
        array(4) {  
          ["PanierJeux"]=>  
          string(16) "Empire Total War"  
          ["PanierPlateForme"]=>  
          string(3) "Wii"  
          ["PrixJeux"]=>  
          string(2) "59"  
          ["Qte"]=>  
          int(1)  
        }  
        [2]=>  
        array(4) {  
          ["PanierJeux"]=>  
          string(13) "Left 4 Dead 2"  
          ["PanierPlateForme"]=>  
          string(13) "Playstation 3"  
          ["PrixJeux"]=>  
          string(2) "45"  
          ["Qte"]=>  
          int(1)  
        } 


    A noter que le même var_dump au lycée indiquait le tableau comme "&array". J'espère que lors de la présentation de mon projet au lycée le probléme n'arriveras pas.

    Mon Environnement : PhP 5.3 / Apache 2
    0
  3. le père
     
    C'est un var_dump de $_SESSION['Panier'] ou de $_SESSION ?
    D'après le code que tu as montré au début, ce serait plutôt de $_SESSION.
    Si tu ne mets pas plus de rigueur dans tes essais que dans tes compte-rendus, pas étonnant que les résultats différent d'une fois sur l'autre.
    0
  4. Guillaume
     
    C'est un var_dump de $_SESSION.
    0