prob avec panier virtuel et for()

Eléphanteau du PHP | 20 Messages

19 oct. 2007, 14:45

Bonjour à tous!

Voilà j'ai un formulaire avec des

Code : Tout sélectionner

<input type="checkbox" name="garniture[]" value="xy">
que je récupère dans une seconde page. J'arrive à voir le contenu coché avec

Code : Tout sélectionner

for ($h = 0; $h < count($_GET["garniture"]); $h++){ echo $_GET["garniture"][$h]." "; }
mais j'aimerais faire du résultat de ce for un ARRAY ou variable, est-ce possible?

et ma seconde question : est-ce que je peux ajouter un troisième niveau à ma session et y intégrer ce résultat

Code : Tout sélectionner

$_SESSION['panier']['garniture'] = array();
J'espère avoir été assez clair et merci pour vos réponses..

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 oct. 2007, 14:53

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "Débuter en PHP".

Merci de prendre le temps de lire les règlements
ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

19 oct. 2007, 15:06

Dans ta session, tu es chez toi, tu fais ce que tu veux :)

$_SESSION est un bête tableau, tu y colles simplement tout ce que tu veux, dimensions, index, variables, ... :)

Quant à ta première question, la variable $_GET["garniture"] que tu récupères et sur laquelle tu applique la fonction count() et dont tu liste les éléments avec $_GET["garniture"][$h] est d'ors et déjà un tableau que tu peux donc utiliser :)
$_SESSION['panier']['garniture'] = $_GET["garniture"];

echo '<pre>';
print_r($_SESSION);
echo '</pre>';
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 20 Messages

19 oct. 2007, 16:37

Merci, maintenant j'arrive à voir le résultat avec print_r($_SESSION);

mais je voudrais les afficher individuellement, je veux dire que j'arrive très bien à afficher

Code : Tout sélectionner

for($i = 0; $i < $nb_art; $i++) { echo ("<td>".$_SESSION['panier']['sand'][$i]."</td>"); }
mais pas avec ça

Code : Tout sélectionner

$nb_arti = count($_SESSION['panier']['garniture']); for($j = 0; $j < $nb_arti; $j++) { echo ($_SESSION['panier']['garniture'][$j]); }
le résultat est ARRAY ARRAY selon $i
il me manque un niveau mais je sais pas comment l'appeller.

arff désolé pour mon temps de réponse mais je cherchais..
merci

d0m
Mammouth du PHP | 1141 Messages

19 oct. 2007, 16:48

tu peux pour cela encore utiliser la fonction print_r() pour voir ce qu'est le contenu.
$nb_arti = count($_SESSION['panier']['garniture']);
  for($j = 0; $j < $nb_arti; $j++) {
  print_r ($_SESSION['panier']['garniture'][$j]);echo '<BR>';
 } 

Eléphanteau du PHP | 20 Messages

19 oct. 2007, 16:55

et si je veux que le contenu
car là ça me donne

Array ( [0] => beurre [1] => mayo )

je voudrais que

beurre mayo

Eléphanteau du PHP | 20 Messages

19 oct. 2007, 16:56

j'oubliais merci à toi aussi

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 oct. 2007, 18:20

Résolu ??

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute