Bonjour,
je suis en train de coder un panier en php.
j'utilise les variables de session pour transmettre les informations contenues dans le panier d'une page à l'autre.
Pour une raison qui me vaut d'écrire sur ce forum, j'essaie de modifier le contenu "selected" d'une option après que l'utilisateur ait confirmé son souhait dans un select, sans succès.
A partir d'ici ça va moins bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 <?php // il y a bien un session_start() au début de la page // une requete est effectuée en BDD et elle fonctionne, le panier fonctionne lui aussi /* ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- TITRE PRODUIT et prix unitaire en dessous ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- */ echo '<td class="cart_name">'; echo '<a href="'.RACINE.PCAT.'/'.htmlspecialchars($pagen['url']).'/'.htmlspecialchars($row['url']).'/'.(int)$row['id'].'/">'; echo stripslashes(reduction2(htmlspecialchars($row['titre']),47)); echo '</a>'; $_SESSION['panier']['prixProduit'][$i] = $row['prix']; echo '<br/><b style="font-size:15px;color:#2fb5d2">'.number_format((htmlspecialchars($row['prix'])),2,'.','').' €</b></td>'; /* ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- QUANTITES ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- */ echo '<td class="cart_q">'; echo '<input type="number" size="1" name="q[]" min="1" max="20" value="'.htmlspecialchars($_SESSION['panier']['qteProduit'][$i]).'" onclick="document.forms.panier.submit()"/>'; echo '</td>'; // jusqu'ici tout va bien ;)
- je fais une requête en BDD pour obtenir les différents formats de poids que je souhaite donner à l'utilisateur
- Puis j'insère le résultat dans un select :
et un var_dump de ma variable de session $_SESSION['panier']['poidsArticle'][$i] m'affiche une valeur à NULL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 /* ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- POIDS ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- */ echo '<select name="poids" class="browser-default" onchange="document.forms.panier.submit()">'; foreach($poids as $ret){ if($_SESSION['panier']['poidsArticle'][$i]==$ret['valeur']) $selectchoix=' selected="selected"'; else $selectchoix=''; echo '<option value="'.$ret['valeur'].'"'.$selectchoix.'>'.$ret['titre'].'</option>'; } echo '</select>';
En conséquence le refresh que je fais, une fois que l'utilisateur à fait son choix, ne remplis pas sa fonction (d'actualiser les quantités) puisque son contenu reste NULL.
Voilà je vous écris pour savoir déjà si je prends la bonne route car j'ai un problème de méthode sur ce cas particulier et j'aimerais avoir un regard extérieur.
Merci beaucoup.
Partager