PhP - Tableau associatif ds Variable SESSION

Fermé
Guillaume - Modifié par Guillaume le 11/04/2010 à 19:18
 Guillaume - 12 avril 2010 à 11:34
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 ??
A voir également:

4 réponses

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
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
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
C'est un var_dump de $_SESSION.
0