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 :

Insert et select pour insérer plusieurs lignes dans table


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Insert et select pour insérer plusieurs lignes dans table
    Bonjour,

    Avant toute chose, j'espère être dans la bonne section, si ce n'est le cas, je m'en excuse par avance.
    J'ai un souci pour insérer une seconde requête qui ne permet d'insérer les lignes d'un bon de commande qui proviennent de lignes d'un devis.
    Dans mon second $insertSQL (cf code ci dessous), j'ai apparemment un pb avec $id_devis_FK, si je laisse la variable, ma deuxième requête ne s'insère pas, si je la remplace par une valeur numérique, ça fonctionne.
    Et là, j'aurai besoin de vos savoir faire !! Vous en remerciant par avance.

    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
     
    <?php
    // Récupération de la variable id_devis envoyée avec POST
    $id_devis_FK=$_POST['id_devis'];
     
    // Nb de bons de commande
    $Total_Bc= mysql_query("SELECT MAX(id_bc) FROM bons_commande") or die(mysql_error());
    $row_Total_Bc= mysql_fetch_assoc($Total_Bc);
    $TotalBc=$row_Total_Bc['MAX(id_bc)']+1; // Nb total de bons de commande dans la table + 1 pour avoir le suivant
     
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
      $insertSQL = sprintf("INSERT INTO bons_commande (id_bc, id_firm_FK, id_sales_person_FK, commentaire, valide, 'date') VALUES (%s, %s, %s, %s, %s, %s)",
                           GetSQLValueString($_POST['id_bc'], "int"),
                           GetSQLValueString($_POST['id_firm_FK'], "int"),
                           GetSQLValueString($_POST['id_sales_person_FK'], "int"),
                           GetSQLValueString($_POST['commentaire'], "text"),
                           GetSQLValueString($_POST['valide'], "int"),
                           GetSQLValueString($_POST['date'], "date"));
     
      mysql_select_db($database_bdd, $bdd);
      $Result1 = mysql_query($insertSQL, $bdd) or die(mysql_error());
     
      // Je met la variable $Total_Bc à la place de id_devis_FK
      // Champs de ma table devis_ligne : id_ligne, id_devis_FK, service, quantite, prix_ht, tva_FK
      // Champs de ma table bons_commandes_lignes : id_ligne, id_bc_FK, service, quantite, prix_ht, tva_FK 
      $insertSQL = sprintf("INSERT INTO bons_commande_lignes (id_bc_FK, service, quantite, prix_ht, tva_FK) 
      SELECT '$TotalBc', service, quantite, prix_ht, tva_FK 
      FROM devis_lignes 
      WHERE id_devis_FK='$id_devis_FK'"); // Si je remplace $id_devis_FK par une valeur numérique, ça fonctionne
      // Si j utilise la variable $id_devis_FK, rien ne s insére dans ma table
     
      $Result2 = mysql_query($insertSQL, $bdd) or die(mysql_error());
    }
    ?>

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    Es-tu certain que c'est bien la valeur de $TotalBc que tu veux placer dans la colonne id_bc_FK ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mai 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Oui tout à fait
    Oui bonjour,
    Je souhaite bien insérer cette variable qui correspond au id du bon de commande qui va être généré (je calcule le nb total de bons de commande actuel + 1) pour l'insérer dans une table bons_commande_ligne pour après faire une liaison avec ma table bons_commande

    Merci d'avance

Discussions similaires

  1. Insérer plusieurs lignes dans une cible à partir d'une ligne source
    Par marcelus45 dans le forum ODI (ex-Sunopsis)
    Réponses: 4
    Dernier message: 15/06/2009, 17h13
  2. Code pour insérer plusieurs valeurs dans une cellule
    Par azerty1956 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/03/2009, 13h09
  3. [MySQL] insérer plusieurs lignes dans une table
    Par ozyman dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 12/02/2009, 22h33
  4. Problème pour effacer plusieurs lignes dans grid DevExpress
    Par Cazaux-Moutou-Philippe dans le forum Langage
    Réponses: 0
    Dernier message: 08/02/2008, 13h41
  5. [VBA-E] Problème pour insérer des lignes dans une feuille Excel
    Par skystef dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/04/2007, 14h13

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