8771 sujets

Développement web côté serveur, CMS

Pages :
(reprise du message précédent)

J'ai bien mis mes deux requêtes, mais ça ne change rien. Je dois pas être loin ... Smiley murf

Je me plante ou ? Le boulet de la semaine, si c'est pas du mois c'est bibi Smiley lol
Modifié par Tintin75 (18 Mar 2017 - 16:46)
Bzh a raison cela ce fait mais bon ...
J'ai complété ton code pour qu'il fasse ce que tu veux, j'espère qu'il te servira pour aller plus loin.
Les tutos, les forums c'est super, mais essais de trouver un bon petit bouquin avec les bases php-mysql tu progressera plus vite...

note:
- La page s'appelle elle même (action="index2.php")
- j'ouvre une session pour stocker les données sélectionnées dans un panier
- l'encodage json se fait avec des doubles quote par défaut il faut donc l'encadrer avec des simples quotes dans le html "...( value='".$jsonData."'>)
- il y a un bouton pour vider le panier sinon....etc...

Maintenant je crois que l'on sort un peu du sujet du POST initial ...

Bonne journée,
a plus


<!DOCTYPE html>

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body><form id="form1" method="post" action="index2.php">
            <p>
            <select name="l" id="l">
        <?php
                //Ouverture/création de la session pour stocker le panier dans $_SESSION
                session_start();
                //Si le bouton init est utilisé le panier est détruit
                if (isset($_POST['init'])) {
                    unset($_SESSION['panier']);
                }
                $connexion = new PDO('mysql:host=127.0.0.1;dbname=basetest','root','xxx');
                $connexion->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
                
                $sql='SELECT * FROM Choix JOIN Articles ON Choix.l = Articles.l';
                
                $result=$connexion->prepare($sql);
                
  	        $result->execute();

                while ($data = $result->fetch()) {
                        $jsonData=json_encode($data);

			echo "<option value='".$jsonData."'>". $data['diametre']. " - " . $data['d']."</option>";
                }
                //Si le bouton valider l'article est ajouté au panier
                if (isset($_POST['valider']) and isset($_POST['l'])) {
                    $_SESSION['panier'][]=$_POST['l'];
                }

	 ?>                 
            </select>  
	  
            <input name="valider" type="submit" value="Valider">
            <input name="init" type="submit" value="Initialiser la session">
            </p>
            
            <div>PANIER:<br/>
                <?php 
                    if (isset($_SESSION['panier'])) {
                        foreach ($_SESSION['panier'] as $jsonData) {
                            $articleDuPanier=  json_decode($jsonData,true);
                            echo $articleDuPanier['diametre']." - ".$articleDuPanier['d']."<br/>";
                        }
                    }
                ?>
            </div>
        </form>
  
  	<?php
	/* Test variable */
            //print_r($data);
	?>
    </body>
</html>

Ca fonctionne en version test, mais on peut pas faire plus simple ?

Mon code était pas bon ?

Merci beaucoup pour ton aide, je vais étudier ton code. Smiley cligne

C'est super sympa, mais un peu compliqué pour moi pour arriver à mettre en place. L'idéal aurait que j'arrive à faire fonctionner mon bout de code. Quoi qu'il en soit, je vais étudier ton code avec la plus haute attention. Je suis pas pro, et à mon niveau, il faut que je comprenne les lignes de code. Merci encore pour ta patience et ton aide. Smiley smile

Le panier fonctionne sur mon site, c'est juste pour faire tourner ce sacré bout de code avec.
Modifié par Tintin75 (18 Mar 2017 - 15:59)
Un grand merci aux personnes qui m'ont aidé sur ce post, c'est sympa. Smiley smile

Le code fonctionne comme je veux. Merci encore Smiley cligne
Modifié par Tintin75 (19 Mar 2017 - 09:13)
Pages :