< ? session_start(); // nous allons enregistrer une commande // nous vérifions que le bouton Cder est celui qui a mené a cette page: if(isset($_POST['action']) and $_POST['action']=="Cder"){ $id=$_POST['id']; //id de la fleur $qte=$_POST['qte']; // quantité désirée par le client if( empty($_SESSION['panier'][$id]) ){//si le panier contenant cette fleur est vide $_SESSION['panier'][$id]=$qte; // on enregistre la quantité désirée par le client }else{ // si le panier contient déjà cette fleur $_SESSION['panier'][$id]+=$qte;// alors on ajoute la quantité à la valeur initiale }//on a terminé le traitement. //on renvoi l'internaute sur la boutique. ?> <script="javascript"> location.replace("panier4_1.php"); </script> ?> } |
$panier[id_de_la_fleur]= quantité désirée. nous la passons en variable de session : $_SESSION['panier'][$id_de_la_fleur] = Quantité désirée. // ATTENTION : $id étant un chiffre, pas de (' ') pour l'encadrer. |
if(empty($_SESSION['panier'][$id]) ){ ==> le panier de cette fleur est vide |
//Nous vérifions que l'internaute a cliqué sur Eliminer if(isset($_POST['action']) and $_POST['action']=='Eliminer'){ // vérifions s'il a cliqué mais sans rien cocher if(empty($_POST['case']) ){ //dans ce cas on le renvoi sur la page du caddie. ?> <script ="Javascript"> history.go(-1); </script> < ? exit; } //on va lire le tableau case[] dans une boucle foreach: foreach ($_POST['case'] as $delete){ //on supprime la session corespondante à la fleur: unset($_SESSION['panier'][$delete]); }//fin foreach //on renvoit l'internaute sur la page de caddie. ?> <script ="Javascript"> location.replace("Panier4_3.php"); </script> < ? exit; }//fin de la suppression |
// nous vérifions que l'internaute a bien cliqué sur Changer. if(isset($_POST['action']) and $_POST['action']=='Changer'){ //cas d'erreur de l'internaute : if(empty($_POST['case']) ){ //on le renvoit sur le caddie ?> <script ="Javascript"> history.go(-1); </script> < ? exit; } ?> //le formulaire d'affichage des données: <form method="POST" action=""> <? require('inc_connect.php'); foreach($_POST['case'] as $modif){ $sql="Select* from fleuriste where id='$modif'"; $req=mysql_query($sql,$connexion)or exit ('Erreur SQL !'.$sql.'<br>'.mysql_error()); while( $data=mysql_fetch_array($req) ) { echo"<b>Produit :</b> <i>".$data['nom']."</i><br>"; echo"<b>Quantité commandée :</b> <input type='text' name='exqte[$modif]' value='".$_SESSION['panier'][$modif]."' size='2'><hr>"; }//fin du while }//fin du foreach mysql_close(); ?> <input type="submit" name="action" value="OK"> </form> < ? }//fin des changements ETAPE 1 |
foreach($_POST['case'] as $modif){ [...] "Select* from fleuriste where id='$modif'"; //$modif représentant l'ID de la fleur. [...] echo"<b>Produit :</b> <i>".$data['nom']."</i><br>"; |
echo"<b>Quantité commandée :</b> <input type='text' name='exqte[$modif]' value='".$_SESSION['panier'][$modif]."' size='2'><hr>"; |
if(isset($_POST['action']) and $_POST['action']=='OK'){//si l'internaute a bien cliqué sur le bouton OK if(empty($_POST['exqte']) ){//cas d'erreur dans le script ?> <script ="Javascript"> history.go(-1); </script> <? exit; } // nous allons utiliser une boucle foreach foreach ($_POST['exqte'] as $type =>$nbre){ if( $nbre==0 OR empty($nbre) ){// si l'internaute à changé la quantité à 0 unset($_SESSION['panier'][$type]); } $_SESSION['panier'][$type]=$nbre; }//fin du foreach ?> <script ="Javascript"> location.replace('Panier4_3.php'); </script> <? exit; }//fin des changements ETAPE 2 ?> |
Notes:
Notez que de toute façon ces scripts ne sont qu'à titre d'exemples et n'en sont donc que trés
partiels, il vous faudra bien-sûr les intégrer dans l'environnement de votre page, de votre site,
mais la méthode est là et elle fonctionne.
Autre point important, ces morceaux de scripts notament, lorsqu'il y a connexion à votre base de données, ne font aucune référence à certains problèmes de
sécurité.