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

PHP & Base de données Discussion :

Problème double insertion dans BDD


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    non j'ai pas 2 auto ds la meme table , c'est pas possible :s

  2. #2
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    oauis la requete $derniere_com ne sert à rien mais qd je l'enleve et tout ce qui la concerne, ca beugue, ca me fout plein d'erreur...

  3. #3
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    oui tu m as embrouillé avec ton tableau de requetes que tu execute pas

  4. #4
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    ben corrige les mdr
    le but n'est pas de ne pas avoir d'erreurs et que ca marche pas mais que ca marche sans erreurs

    ca te dit quoi ?

    EDIT
    oui c est des super phrases je sais

  5. #5
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    la faut quand meme que tu m explique comment c est pas deux auto_increment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requetes['ligne_livr'][$i] =  "INSERT INTO ligne_livr (num_com, num_livr) VALUES ('', '')";
    y en a un que tu met vide ? autant ne pas le mettre dans la requete

  6. #6
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    ba aouis je sais bien...
    j'ai enlevé le $derniere_com
    voici l'erreur :
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in...

    le cde :
    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
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
     
    $add_com = " INSERT INTO commande(num_com, date_com) VALUES ( '', '".$date."' )";
     
    if ($base=mysql_connect (SERVEUR,log,password))
    {
     echo "<h1><u><center></u></h1></center><br>";
    }
    else
    {
     echo "<H3>Echec de la connexion au serveur</h3>";
     exit;
    }
    mysql_select_db(BASE,$base);
     
     
    for ($i=0;$i<20;$i++) 
       {
       $tab_passer[]=""; 
       $tab_conserner[]="";
       $tab_acheter[]="";
       $tab_livraison[]="";
       $tab_ligne_livr[]="";
     
     
    $requetes = array ("passer" => $tab_passer, "conserner" => $tab_conserner, "acheter" => $tab_acheter, "livraison" => $tab_livraison, "ligne_livr" => $tab_ligne_livr);
       }
     
    if ($tab_com = mysql_query ($add_com,$base))
    {
      $res_com = mysql_fetch_array($tab_com);   ==> ICI
     $num_com = $res_com[0];
     $quantite = $_SESSION['panier']['quantite'];
     
     echo "<h3><B><b><center><font face = papyrus>Votre commande a bien été prise en compte</B><br><br>Le paiement s'effectuera au moment de la livraison<br>
     le delais est de 48h
     </center>";   
     
    }
    else
    {
     echo "Erreur dans l'éxecution de la requete add_commande<br>";
     echo "Erreur".mysql_error().":".mysql_error()."<br>";
    }
     
    for ($i = 0; $i < 20 ; $i++)
    {
     if ($_SESSION['panier']['quantite'][$i] >0)
     {
     
     
      $requetes['passer'][$i] = "INSERT INTO passer(num_com, num_cli) VALUES ('', '".$_SESSION['num_cli']."')";
      $requetes['conserner'][$i] = "INSERT INTO conserner (num_com, ref_produit, quantite) VALUES ( '','".$_SESSION['panier']['ref_produit'][$i]."', '".$_SESSION['panier']['quantite'][$i]."');";
      $requetes['acheter'][$i] =  "INSERT INTO acheter (num_cli, ref_produit, designation_produit, quantite, total) VALUES ('".$_SESSION['num_cli']."', '".$_SESSION['panier']['ref_produit'][$i]."', '".$_SESSION['article']."', '".$_SESSION['panier']['quantite'][$i]."','".$_SESSION['total']."');";
      $requetes['livraison'][$i] = "INSERT INTO livraison (num_livr, date_livr, etat_livr) VALUES ('','aucun', 'encours de traitement')";
      $requetes['ligne_livr'][$i] =  "INSERT INTO ligne_livr (num_com, num_livr) VALUES ('', '')";
     
     }
     
    }
     
    for ($i = 0; $i < 20 ; $i++)
    {
     
    if ($requetes['conserner'][$i] != "")
     {
      if (mysql_query ($requetes['conserner'][$i],$base))
     {
      //echo "<h3>Conserner n°".$i." Ajoute</h3>";
      }
      else
     {
      echo "Erreur dans l'éxecution de la requete add_conserner<br>";
       echo "Erreur".mysql_error().":".mysql_error()."<br>";
      }
     }
     echo "<br>Passer = ".$requetes['passer'][1]."<br>";
     
    if ($requetes['passer'][$i] != "")
     {
    if (mysql_query ($requetes['passer'][$i],$base))
     {
      //echo "<h3>Passer Ajoute n°".$i."</h3>";
     }
     else
     {
      echo "Erreur dans l'éxecution de la requete add_passer<br>";
      echo "Erreur".mysql_error().":".mysql_error()."<br>";
     }
     }
     
     echo"<br>acheter = ".$requetes['acheter'][$i]."<br>";
     if ($requetes['acheter'][$i] != "")
     {
      if (mysql_query ($requetes['acheter'][$i],$base))
     {
      //echo "<h3>Acheter n°".$i." Ajoute</h3>";
      }
      else
     {
      echo "Erreur dans l'éxecution de la requete add_acheter<br>";
       echo "Erreur".mysql_error().":".mysql_error()."<br>";
      }
     }
     
     echo"<br>livraison = ".$requetes['livraison'][$i]."<br>";
     if ($requetes['livraison'][$i] != "")
     {
      if (mysql_query ($requetes['livraison'][$i],$base))
     {
      //echo "<h3>Livraison n°".$i." Ajoute</h3>";
      }
      else
     {
      echo "Erreur dans l'éxecution de la requete add_livraison<br>";
       echo "Erreur".mysql_error().":".mysql_error()."<br>";
      }
     }
     echo"<br>ligne_livr = ".$requetes['ligne_livr'][$i]."<br>";
     if ($requetes['ligne_livr'][$i] != "")
     {
      if (mysql_query ($requetes['ligne_livr'][$i],$base))
     {
      //echo "<h3>Livraison n°".$i." Ajoute</h3>";
      }
      else
     {
      echo "Erreur dans l'éxecution de la requete add_ligne_livr<br>";
       echo "Erreur".mysql_error().":".mysql_error()."<br>";
      }
     }
    }
    }
     
    session_destroy();                             //la commande est terminee on detruit la session
    session_unset();
                                  //et on efface toutes les variables pour eviter les bug
    echo"<body bgcolor=#ccffff>";
    echo"<font size = -1><i><a href = 'destruction.php'>Fermer la session</a></i></font>";
    echo"votre numero de commande est le : ".$num_com.";";
     
    ?>

  7. #7
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    remplace
    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
    if ($tab_com = mysql_query ($add_com,$base))
    {
    $res_com = mysql_fetch_array($tab_com); ==> ICI
    $num_com = $res_com[0];
    $quantite = $_SESSION['panier']['quantite'];
     
    echo "<h3><B><b><center><font face = papyrus>Votre commande a bien été prise en compte</B><br><br>Le paiement s'effectuera au moment de la livraison<br>
    le delais est de 48h
    </center>";
     
    }
    else
    {
    echo "Erreur dans l'éxecution de la requete add_commande<br>";
    echo "Erreur".mysql_error().":".mysql_error()."<br>";
    }
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $tab_com = mysql_query ($add_com) or die("Erreur dans l'éxecution de la requete add_commande<br>Erreur :".mysql_error()."<br>";);
     
    $res_com = mysql_fetch_array($tab_com); ==> ICI
    $num_com = $res_com[0];
    $quantite = $_SESSION['panier']['quantite'];
     
    echo "<h3><B><b><center><font face = papyrus>Votre commande a bien été prise en compte</B><br><br>Le paiement s'effectuera au moment de la livraison<br>
    le delais est de 48h
    </center>";
    et

  8. #8
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    desolée pour hier je me suis endormi
    enfin bref, j'ai pris ce que tu m'a proposé et j'ai cette erreur :
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c: ...
    à ce niveau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $res_com = mysql_fetch_array($tab_com); ==>ICI
    $num_com = $res_com[0]; 
    $quantite = $_SESSION['panier']['quantite'];

  9. #9
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    il t affiche pas le mysql_error() ?

    fais un echo mysql_error(); avant le fetch

  10. #10
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    il ne m'affiche pas de mysql_ error...

  11. #11
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    tu fais un $tab_com = mysql_query ... quelque part au moins ?

  12. #12
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    c'est bizard car quand je l'utilise avec la requete $derniere_com, ça en me donne pas d'erreur..

  13. #13
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    oauis
    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
     
    f($tab_com = mysql_query ($add_com,$base) or die("Erreur dans l'éxecution de la requete add_commande<br>Erreur :".mysql_error()."<br>"));
     
    {
     $res_com = mysql_fetch_array($tab_com);
    $num_com = $res_com[0]; 
    $quantite = $_SESSION['panier']['quantite'];
     
     
    echo "<h3><B><b><center><font face = papyrus>Votre commande a bien été prise en compte</B><br><br>Le paiement s'effectuera au moment de la livraison<br>
    le delais est de 48h 
    </center>"; 
     
    }
     
     
    for ($i = 0; $i < 20 ; $i++)
    {
     if ($_SESSION['panier']['quantite'][$i] >0)
     {
     
     
     
     
      $requetes['passer'][$i] = "INSERT INTO passer(num_com, num_cli) VALUES ('', '".$_SESSION['num_cli']."')";
      $requetes['conserner'][$i] = "INSERT INTO conserner (num_com, ref_produit, quantite) VALUES ( '','".$_SESSION['panier']['ref_produit'][$i]."', '".$_SESSION['panier']['quantite'][$i]."');";
      $requetes['acheter'][$i] =  "INSERT INTO acheter (num_cli, ref_produit, designation_produit, quantite, total) VALUES ('".$_SESSION['num_cli']."', '".$_SESSION['panier']['ref_produit'][$i]."', '".$_SESSION['article']."', '".$_SESSION['panier']['quantite'][$i]."','".$_SESSION['total']."');";
      $requetes['livraison'][$i] = "INSERT INTO livraison (num_livr, date_livr, etat_livr) VALUES ('','aucun', 'encours de traitement')";
      $requetes['ligne_livr'][$i] =  "INSERT INTO ligne_livr (num_com, num_livr) VALUES ('', '')";
     
     }
     
    }

  14. #14
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par défaut
    vire le if,
    tu peut pas mettre de or die dans un if avec en plus un ;

  15. #15
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    oauis mais ca cloche toujours...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $tab_com = mysql_query ($add_com,$base) or die("Erreur dans l'éxecution de la requete add_commande<br>Erreur :".mysql_error()."<br>");
     
     
     $res_com = mysql_fetch_array($tab_com);
    $num_com = $res_com[0]; 
    $quantite = $_SESSION['panier']['quantite'];
     
     
    echo "<h3><B><b><center><font face = papyrus>Votre commande a bien été prise en compte</B><br><br>Le paiement s'effectuera au moment de la livraison<br>
    le delais est de 48h
    </center>";

Discussions similaires

  1. [MySQL / JSF] Problème d'insertion dans BDD
    Par randasd dans le forum Autres
    Réponses: 0
    Dernier message: 25/08/2010, 16h46
  2. Problème Insert dans bdd Access
    Par waterman dans le forum Windows Forms
    Réponses: 10
    Dernier message: 10/04/2007, 17h15
  3. [MySQL] Problème d'insertion dans la BDD
    Par flames dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 22/12/2006, 21h27
  4. [VB6/mysql]:Problème d'insertion dans une bdd
    Par gaetan.tranvouez dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/06/2006, 10h15
  5. pb double insertion dans BDD
    Par oceane751 dans le forum Requêtes
    Réponses: 3
    Dernier message: 26/12/2005, 09h59

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