IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment modifier la quantité de produit existe dans le panier?


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 32
    Points : 13
    Points
    13
    Par défaut Comment modifier la quantité de produit existe dans le panier?
    bonjour
    je fais un code qui teste si un produit existe ou non dans le panier.
    S'il existe il modifie seulement la quantité de produit ; si non il ajoute le produit au panier mais mon problème est que mon code ajoute le produit dans les deux cas .
    qui peut m'aider ?

    Merçi

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
     
    <?php // code de creation d'une session
    session_start();// ouverture d'une session
    $table=array();// declaration d'un variable $table vide
    if(isset($_SESSION['paniercomposants']));///test sur la session ssi existe 
    else $_SESSION['paniercomposants']=$table;//sinon on la cree et on l'affecte un tableau vide pour commencé
    ?>
     
     
     
     
     
     
      <?php
     
     // require_once('../kernel/begin.php');
    //require_once('../download/download_begin.php');
    //require_once('../kernel/header.php');
     
     echo $idProduit=$_GET["idp"]; echo '<br>';
    echo $nomProduit=$_GET["nom"]; echo '<br>';
    echo $prixProduit=$_GET["prix"]; echo '<br>';
     
      $tableproduit=$_SESSION['paniercomposants']; // affecter le contenu de ession dans le $tableproduit
    if($tableproduit=='')
    {
     $count=0;
     echo "le panier est vide";
     }
     else
     { $count=count($tableproduit[0]);  // tester  la tail de session
     
     echo "le panier n'est pas vide";
     
    //echo ' count'; echo $count;
    ///if($count>0) 
    //{
    //$array = array();
     
    //for($j=0; $j<$count ; $j++){// parourrire de tableau de session
    //echo  $tableproduit[$j];
    //$arrayindice[$j] = $j;
    //} 
     
     }
        ?>
     
         <?php
    //$ref=$_GET["id"];
    $nom=$_GET["nom"];
    $prix=$_GET["prix"];
     
    //$existe=false;
    $tableproduit=$_SESSION['paniercomposants'];
    if($tableproduit==0)
    {
    $qt=1;
    //$count=0;
    $tableproduit[0][0]=$nom;
    $tableproduit[1][0]=$prix;
    $tableproduit[2][0]=$qt;
    $_SESSION['paniercomposants']=$tableproduit;
    }
     else
    {
    $count=count($tableproduit[0]); 
    for($j=0; $j<=$count; $j++)
    {
    if($tableproduit[0][$j]==$nom)
    {
    $tableproduit[2][$j]=$tableproduit[2][$j]+1;
     
    echo ' existe dejas';
    echo '<a href="ConsulterPanier.php">Consulter panier</a>';
    $_SESSION['paniercomposants']=$tableproduit;
    exit();
    }
     
    else 
    {
    $nbr = $count +1;
    $qt=1;
    $tableproduit[0][$nbr]=$nom;
    $tableproduit[1][$nbr]=$prix;
    $tableproduit[2][$nbr]=$qt;
    $_SESSION['paniercomposants']=$tableproduit;
    }
     
    }
    }
     
     
    ?>
     
     
    <a href="ConsulterPanier.php">Consulter panier</a>
     
     
     <?php 
    //require_once('../kernel/footer.php'); ?>

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 36
    Points : 44
    Points
    44
    Par défaut
    Salut,

    Ton code est un peu confus toute fois je vais essayer de le déchiffrer mais pense a indenter et a commenter le code ou tu fais les actions sur lesquelles tu veux que l'on t aide.

    Je pense que le code où tu fais ton action se passe ici :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <?php
         $ref=$_GET["id"];
         $nom=$_GET["nom"];
         $prix=$_GET["prix"];
     
         //$existe=false;
         $tableproduit=$_SESSION['paniercomposants'];
         if($tableproduit==0) { // Ici transforme en if(count($tableproduit) == 0){
              $qt=1;
              //$count=0;
              // Ici je te conseille 
             $tableproduit[0]['nom']=$nom;
             $tableproduit[0]['prix']=$prix;
             $tableproduit[0]['qte']=$qt;
             $_SESSION['paniercomposants']=$tableproduit;
          }else{
             $count=count($tableproduit); 
             for($j=0; $j<=$count; $j++){
                      if($tableproduit[$j]['nom']==$nom){
                               $tableproduit[$j]['qte']++; //Attention tu n'ajoutes qu'un produit ici je ne sais pas comment est prévu ton formulaire
                               echo ' existe dejas';
                               echo '<a href="ConsulterPanier.php">Consulter          panier</a>';
                               $_SESSION['paniercomposants']=$tableproduit;
                               exit();
                      }
             }
              if($j >= $count){
                     $j++;          
                     $tableproduit[0]['nom']=$nom;
                     $tableproduit[0]['prix']=$prix;
                     $tableproduit[0]['qte']=1;
                     $_SESSION['paniercomposants']=$tableproduit;
              }
       }
    Essai cela j'ai peux etre fais des erreurs et le code n'est pas du tout optimisé mais je t'avouerais que le code est un peu confus pour moi.
    Si tu veux rentrer dans les détails n'hésites pas, par contre fais attention j'ai changé la gestion de ton tableau.

    A+

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/05/2006, 22h50
  2. Réponses: 9
    Dernier message: 04/05/2006, 17h33
  3. Comment modifier la couleur d'un mot dans un tableau ?
    Par noxious dans le forum Composants VCL
    Réponses: 2
    Dernier message: 16/11/2005, 13h05
  4. comment modifier le timeout d'une vye dans sql server 2K ?
    Par jlassira dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 07/10/2005, 11h28
  5. Comment modifier la taille de la police dans Word ?
    Par djoao dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 11/12/2004, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo