begin process at 2012 05 31 06:26:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

prob de panier virtuel ds un site dynamique


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

prob de panier virtuel ds un site dynamique

mardi 6 juin 2006 à 00:58:21 | prob de panier virtuel ds un site dynamique

louli2


Bonsoir tt le monde, voilà mon problème: je crée un site dynamique commercial chui arrrivée dans l'étape de création du panier virtuel, il me semble que le code de la page "panier.php" est exact pourtant ça m donne plusieurs message d'erreur relatifs a la definition des variable: voilà les messages d'erreur:
Notice: Undefined variable: ajoutPanier in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 9

Notice: Undefined variable: modifPanier in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 19

Notice: Undefined variable: suppPanier in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 30

Notice: Undefined variable: enregistreCommande in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 40

Notice : Undefined variable: liste in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 77
 et voila le code de la page :
<?php
session_start();
if (!isset($total)) session_register("total");
?>
<?php require_once('../Connections/connexionboutiquefleur.php'); ?>
<?php
mysql_select_db($database_connexionboutiquefleur, $connexionboutiquefleur);
//--------------------------------------AJOUT PANIER
if ($ajoutPanier=="Ajouter")
    {
 $nb=1; //par défaut la quantité est de 1
 if (!isset($liste))
        session_register("liste");
 //création de la variable de session "liste" pour le premier article  
    $liste[]=array($reference,$nb,$prix_unit,$prix_unit);
 //ajoute un article à la liste
 }
//------------------------------------MODIF PANIER
if ($modifPanier=="Actualiser")
    {
 for ($i=0;$i<count($liste);$i++)
        {
     $nbi=nb.$i;
     $liste[$i][1]=$$nbi;
     $liste[$i][3]=$liste[$i][1]*$liste[$i][2];
     //prixArticle=nbre*prixunitaire
     }
 }
//--------------------------------------SUPP PANIER
if ($suppPanier=="Supprimer")
    {
 for ($i=0;$i<count($liste);$i++)
        {
     if($article==$i)
     array_splice($liste,$i,1);
     //supression de l'article de la liste du panier
     }
     }
//----------------------------------------COMMANDER
if ($enregistreCommande=="Commander")
    {
 if (!isset($action))
        session_register("action");
     $action="Enregistre";
     header("Location: commande.php");
     }
//------------------------------------------------------------
?>
<html>
<head>
<title>panier</title>
<meta http-equiv="content-type" content="text/html"; charset=iso-8859-1">
</head>
<body>
<p><strong>Panier</strong></p>
<form action ="panier.php" methode="get">
 <table width="650" border="1" align="center" bordercolor="#FF0000">
  <tr>
    <td>
    <table width="650" border="0" align="center">
  <tr bgcolor="#FF0000">
   <td width="200"> <div align="center">
    <strong>Titre</strong></div>
    </td>
    <td width="200"><div align="center">
     <strong>Qantit&eacute;</strong></div>
    </td>
    <td widh="200"><div align="center">
      <strong>Prix</strong></div>
   </td>
   <td width="50"><div align="center">
    <strong>Supp</strong></div>
    </td>
   </tr>
  <?php
  $total=0.00;// initialisation du total de la commande à 0
  for ($i=0;$i<count($liste);$i++)
   {// debut du bloc for
   $query_rsPanier="select * from articles where reference='".$liste[$i][0]."'";
   $rsPanier=mysql_query($query_rsPanier, $connexionboutiquefleur);
   $row_rsPanier=mysql_fetch_assoc($rsPanier);
   /*definition et exécution de la requête sql afin de de récuperer les information de l'article stockés dans la base (titre...)*/
   ?>
   <tr>
    <td><div align="center">
      <?php echo $row_rsPanier['titre'] ?></div>
   </td>
   <td><div align="center">
    <select name="nb<?php echo $i ?>">
     <option value="1" <?php if($liste[$i][1]==1) echo "SELECTED"; ?>>1</option>
     <option value="2" <?php if($liste[$i][1]==2) echo "SELECTED"; ?>>2</option>
     <option value="3" <?php if($liste[$i][1]==3) echo "SELECTED"; ?>>3</option>
    </select></div>
   </td>
   <td><div align="center">
    <?php echo $row_rsPanier['prix_unit'] ?> </div>
   </td>
   <td><div align="center">
    <a href="panier.php?article=<?php echo $i ?>&suppPanier=Supprimer">
     <img src="../cadeau001.gif" width"14" height="20" border="0">
    </a></div>
   </td>
  </tr>
  <?php
  $total+=$row_rsPanier[prix_unit] * $liste[$i][1];
  }//fin du bloc for
  ?>
  <tr>
  <td><div align="center"></div></td>
  <td><div align="center"></div></td>
     <td><div align="center">
   <strong>
    total : <?php echo $total ?> DH
   </strong></div>
   </td>
   <td><div align="center"></div></td>
  </tr>
 </table>
 </td>
 </tr>
 </table>
 <br>
 <p align="center">
  <input name="modifPanier" type="submit" value="Actualiser">
  <input name="enregistreCommande" type="submit" value="Commander">
  </p>
  </form>
  <br>
  
</body>
</html>
HELP ME plz


mardi 6 juin 2006 à 05:13:07 | Re : prob de panier virtuel ds un site dynamique

hlimaiem



Limaiem heykel
Pourquoi vous n'utiliser pas une variable de session contenant un tableau qui lui meme contient (vos achats)
exemple : $_SESSION['Pannier'][$i];
avec et une autre var de SESSION contenant le nombre d'achat ainsi vous pouvez enlever/ajouter/supprimer et bien sur afficher votre tableau,
tu n'aura donc besoin que d'une autre var de parcours .
mardi 6 juin 2006 à 10:51:21 | Re : prob de panier virtuel ds un site dynamique

pastis51forever

Ca doit etre parce que tu fais des tests sur des variables qui ne sont pas initialisées. Dans ton php.ini, tu peux enlever l'affichage des erreurs de type notice (qui sont des erreurs "pas graves" ou qui peuvent être voulues, si mes souvenirs sont bons.) Dans mon souvenir, c'est avec une ligne du type E_ALL ~E_NOTICE, mais tu verras ca en parcourant le fichier. Dans tous les cas, ces messages ne devraient pas apparaitre avec ton hebergement, mais il est vrai que c'est bizarre de faire des tests sur des variables qui n'existent pas. Il est mieux de faire if (isset($ajoutPanier) AND $ajoutPanier=="Ajouter"). Sinon, c'est vrai qu'en géñeral, la gestion des paniers est beaucoup plus simple avec les variables de session.
mardi 6 juin 2006 à 11:33:42 | Re : prob de panier virtuel ds un site dynamique

louli2

merci hlimaiem   , si j trouve pas de solution pour ce code j vai essayer avec des variable de session (NB: chui debutante en php j nai fait qu'un petit effort pour adapter des codes.... donc jai pas vraiment la liberté de choisir mes methode
mardi 6 juin 2006 à 11:43:34 | Re : prob de panier virtuel ds un site dynamique

louli2

Merciiiiiiii pastis51forever Aprés avoir mis   :   if (isset($ajoutPanier) AND $ajoutPanier=="Ajouter") pour les 3 variable il m'affiche plus qu'un seul msg d'erreur :
Notice: Undefined variable: liste in c:\program files\easyphp1-8\www\boutiquefleur_site\public\panier.php on line 81
voila la partie du code ou la faute est marquée:
<?php
  $total=0.00;// initialisation du total de la commande à 0
  for ($i=0;$i<count($liste);$i++) // ligne 81
   {// debut du bloc for
   $query_rsPanier="select * from articles where reference='".$liste[$i][0]."'";
   $rsPanier=mysql_query($query_rsPanier, $connexionboutiquefleur);
   $row_rsPanier=mysql_fetch_assoc($rsPanier);
   /*definition et exécution de la requête sql afin de de récuperer les information de l'article stockés dans la base (titre...)*/
   ?>
   <tr>
    <td><div align="center">
      <?php echo $row_rsPanier['titre'] ?></div>
   </td>
   <td><div align="center">
    <select name="nb<?php echo $i ?>">
     <option value="1" <?php if($liste[$i][1]==1) echo "SELECTED"; ?>>1</option>
     <option value="2" <?php if($liste[$i][1]==2) echo "SELECTED"; ?>>2</option>
     <option value="3" <?php if($liste[$i][1]==3) echo "SELECTED"; ?>>3</option>
    </select></div>
   </td>
   <td><div align="center">
    <?php echo $row_rsPanier['prix_unit'] ?> </div>
   </td>
   <td><div align="center">
    <a href="panier.php?article=<?php echo $i ?>&suppPanier=Supprimer">
     <img src="../cadeau001.gif" width"14" height="20" border="0">
    </a></div>
   </td>
  </tr>
  <?php
  $total+=$row_rsPanier[prix_unit] * $liste[$i][1];
  }//fin du bloc for

Help plz ( NB: ya le temps ki m presse et javance plus en plus j n ss k1 debutante donc mes capacité sont trop limitées )
mardi 6 juin 2006 à 11:58:45 | Re : prob de panier virtuel ds un site dynamique

pastis51forever

C'est la même erreur, la variable n'est pas déclarée avant. Tu peux mettre, juste avant ta ligne 81: if (!isset($liste)) $liste=array(); devrait faire l'affaire
mardi 6 juin 2006 à 12:07:36 | Re : prob de panier virtuel ds un site dynamique

louli2

merci encore une fois jai plus de msg d'erreur mais  le panier est vide mm apres la selection d'un produit pourrais je entrer en contacte directe avec vs sur msn par exemple pour mieux communiquer plz
mardi 6 juin 2006 à 12:15:18 | Re : prob de panier virtuel ds un site dynamique

pastis51forever

Non, desolé, je suis au boulot. Mais la je t'ai aidée sur ca parceque tu voulais continuer dans cette voie, et pour que tu saches gérer ce genre d'erreur, mais je te conseille quand meme vivement de faire ca avec les sessions, tu verras que c'est beaucoup plus efficace et rapide. Tu devrais chercher sur ce meme site avec comme mots clés "gestion de panier", et tu verras qu'il y a de quoi apprendre. Par contre, n'hesite pas, avant de tout prendre pour argent comptant, a lire les commentaires en dessous, ca te permettra de choisir un exemple de qualité. Si tu veux quand meme rester sur ta solution, dis le moi, je regarderais plus en detail ton source, mais il faut savoir que les sessions sont faites pour ca, et que c'est rapide a comprendre Brice
mardi 6 juin 2006 à 12:36:07 | Re : prob de panier virtuel ds un site dynamique

louli2

ok, ben j'aimerai b1 continuer avec c code voila klk explications selon ce que jai lu dans l livre sur lekel j me base :
les informations  relatives aux articles séléctionnés par l'utilisateur sont mémorisé dans des variables de session. Pour cela , on va utiliser une variable de type tableau ($liste[]) pour mémoriser toutes les informations de la liste du panier virtuel. ce premier tab contient lui mm autant de variable de type tableau qu'il y a d'articles à mémoriser ([x]: identifiant de chak article). Chak tableau d'article mémorise quant a lui quatre informations differentes ([y]=0 : reference [y]=1: quantité, [y]=2:prix_unit, [y]=3: prix total ===> donc la structure de tableau est  : ($liste[x][y])


mardi 6 juin 2006 à 13:14:47 | Re : prob de panier virtuel ds un site dynamique

pastis51forever

Pour l'acces aux variables de sessions, tu devrais utiliser le tableau $_SESSION[], plus sur. Moi ce que je ferais: Chaque fois que le client choisit un nouveau produit, je mettrais simplement: $_SESSION['panier'][]=array($id_du_produit,$quantite,$prix_unitaire); Pour faire le calcul final, tu peux faire une boucle: foreach ($_SESSION['panier'] as $article) { $total=$total+$article[2]*$article[1] //($article[2]=quantité,$article[1]=prix unitaire) } Pour supprimer un article, tu utilise la fonction unset sur l'element du tableau

1 2

Cette discussion est classée dans : site, variable, php, liste, panier


Répondre à ce message

Sujets en rapport avec ce message

Petit pb en PHP, iniatiliser une variable dans une liste deroulante [ par dadoudamien ] Bonjour,JE galère un peu.J'essaye de mettre a jour dynamiquement la variable $qte666, avec une liste déroulante.voici le tronche de mon code (c juste panier virtuel php ??!! [ par KIss Cool ] Salut a tousJe suis nouveau sur ce site et complètement debutant en php, limite ignard.Je dois créer un système de panier virtuel pour un site commerc Stocker la value d'une liste deroulante dans une variable PHP [ par bicz ] Bonjour, Je dois recuperer la value de ma liste deroulante dans une variable PHP, ma liste deroulante est alimenter a partir d'une table. Cette variab Probléme : Undefined variable [ par nycoss ] Voila mon probléme, j'ai installer Easy PHP 1.8 sur mon PC pour heberger un mon propre site web, et je voudrais offrire a mes visiteurs la possibilité Undefined variable ? [ par Hector78 ] Hello !Sur un site j'obtiens le message d'erreur ci-dessous, avec un fichierque j'utilise dans un autre site, où il fonctionne parfaitement.De quel pr Panier PHP [ par idrisidev ] slt tt le monde ,j'ai fai un code php pour ajouter des produit au panier ,l'ajout fait bien mais il m'affiche le message suivant que jai pa pu résoudr PHP & JAVASCRIPT [ par nassayagh ] BonjourJ'ai un probléme au niveau de la création de mon site.J'ai une liste avec un montant.Je veux tout simplement, lorsque je modifie ma listele con Questions de sécurité... [ par shinnokamui ] Bonjour,J'utilise une variabe dans l'addresse d'une page PHP (type : fichier.php?page=1), j'ai put voir sur le net qu'il était necessaire de proteger variable en php [ par theboubourse ] bonjour voila j'ai un petit problème je voudrais savoir pourquoi easyPhp m'indique une erreur de varible non défini ? normalement les variable ne doiv Comment réalisé un site php/mysql avec des permaliens ? [ par romega ] Salut a tous et merci pour l'aide que vous m'avez apporté jusque la.Je dévelope un blog en php/mysql et au lien de me baladé dans les adresses php du


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales