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 :

Ajout multiple dans une table


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut Ajout multiple dans une table
    Bonsoir,

    Actuellement j'ai une page php qui me permet d'ajouter des données dans un table, sur cette page je rentre une date, et le nom de la personne disponible dans une liste déroulante, pas de problème ça fonctionne.

    le soucis est que, étant donné que j'ai plusieurs personne a rentré pour une même date, je me suis dit autant saisir une fois la date sur la page, et ensuite a l'aide d'un petit icone "+" rajouter une personne a saisir, et ce autant que nécessaire. une fois toute les personnes rajouter pour cette date commune, il suffira d'enregistrer les données dans la table !

    le problème c'est que je n'ai jamais fait ça (INSERT INTO multiples) ! et je ne sais pas comment faire ! est ce que quelqu'un aurait un petit bout de code en exemple ????

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    Tu crées ton sql comme ça :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    INSERT INTO t_table (champ1, champ2, champ3)
    VALUES
    (valeur11, valeur12, valeur13),
    (valeur21, valeur22, valeur23),
    (valeur31, valeur32, valeur33),
    (valeur41, valeur42, valeur43),
    ...

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    ok, et niveau php comment je peut géré dynamiquement l'ajout d'une nouvelle zone de texte pour le nom ?
    parce que je ne connait pas le nombre de zone de texte crée a l'avance ?

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Par défaut
    Une fois la date entrée =>
    Formulaire avec select multiple ou case à coché, et selon tu boucle la réponse pour former ta requête mysql avec php.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    comme les uploads multiples :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <input type="text" name="date_resa" value="" />
    
    <input type="text" name="nom_personne[]" value="" />
    <input type="text" name="nom_personne[]" value="" />
    <input type="text" name="nom_personne[]" value="" />
    ...
    Traitement :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // date
    $date_resa = $_POST['date_resa'];
    // nom_personne : récupération d'un array :
    $nom_pers_array = $_POST['nom_personne']; // array
    // INSERT :
    foreach($nom_pers_array as $nom_personne){
      $req = "INSERT .... VALUES ('".$date_resa."', '".$nom_personne."');";
    }
    (je te laisse faire les gestion d'erreurs et PROTECTION contre injection SQL...)

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    ok super merci pour toutes ces infos, juste un dernière questions, je vais mettre 10 zone de texte, et si par exemple l'utilisateur n'en rempli que 5 comment je peux tester si la zone de texte est vide (avant le INSERT) afin de ne pas enregistrer les 5 dernière de vide ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajout ID dans une table
    Par n4rk0o dans le forum Langage SQL
    Réponses: 2
    Dernier message: 04/05/2007, 18h24
  2. Affichage multiple dans une table
    Par elgigante dans le forum WinDev
    Réponses: 7
    Dernier message: 22/03/2007, 13h57
  3. insertion multiple dans une table
    Par nenekes dans le forum Langage SQL
    Réponses: 7
    Dernier message: 22/02/2007, 10h50
  4. Clé multiple dans une table
    Par iutcien dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 31/05/2006, 14h45
  5. Enregistre résulat multiplication dans une table
    Par faranfasi dans le forum Access
    Réponses: 2
    Dernier message: 11/10/2005, 13h04

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