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 en boucle et mysql_insert_id


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 renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut Insert en boucle et mysql_insert_id
    Bonjour à Tous,

    Est-il possible de récupérer les id insérés dans ce type de requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    $ins = "INSERT INTO my_table (id, nom) VALUES ";
    foreach($tab as $data){
    $ins .= "(NULL, $data['nom']),";
    }
    $ins = substr($ins,0,-1);
    $ins .= ";";
    mysql_query($ins) or die(mysql_error());
    Merci d'avance.

  2. #2
    Membre actif
    Avatar de Dumbeldor
    Homme Profil pro
    Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance
    Inscrit en
    Novembre 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance

    Informations forums :
    Inscription : Novembre 2013
    Messages : 88
    Par défaut
    Chaque id ?
    Personnellement j'aurais fais très simplement :
    - Je compte le nombre d'enregistrement que je vais faire
    - Je fais les inserts
    - Je récupère l'id du dernier enregistrement fait
    - Et du coup vu que j'ai le dernier id, que je sais combien j'ai fais d'insertion normalement tu as tous les éléments pour avoir chaque id.

    En espérant t'avoir aidé...
    Bonne soirée.

  3. #3
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Citation Envoyé par Dumbeldor Voir le message
    Chaque id ?
    Personnellement j'aurais fais très simplement :
    - Je compte le nombre d'enregistrement que je vais faire
    - Je fais les inserts
    - Je récupère l'id du dernier enregistrement fait
    - Et du coup vu que j'ai le dernier id, que je sais combien j'ai fais d'insertion normalement tu as tous les éléments pour avoir chaque id.

    En espérant t'avoir aidé...
    Bonne soirée.
    Effectivement, c'est une bonne idée ! Va juste falloir un peu ruser par rapport au premier id inséré, car la table n'est pas vide
    Merci !

  4. #4
    Membre actif
    Avatar de Dumbeldor
    Homme Profil pro
    Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance
    Inscrit en
    Novembre 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance

    Informations forums :
    Inscription : Novembre 2013
    Messages : 88
    Par défaut
    Avec plaisirs
    Et oui, mais c'est pas bien compliqué, tu vas trouver

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Par défaut
    Non. Tu n'aura l'id que du premier insert. Après avec le nombre de lignes insérées tu peux retrouver les id.

    Accessoirement ton code ne fonctionne pas et tu utilises une fonction qui va disparaître de php.

    Ca va faire tout drôle à certains dans 2-3 ans quand les versions 5.x de php ne seront plus supportées.

  6. #6
    Membre actif
    Avatar de Dumbeldor
    Homme Profil pro
    Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance
    Inscrit en
    Novembre 2013
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Concepteur Banque postale / Ecole d'ingénieur Alternance

    Informations forums :
    Inscription : Novembre 2013
    Messages : 88
    Par défaut
    Citation Envoyé par scvo.0ne Voir le message
    Non. Tu n'aura l'id que du premier insert. Après avec le nombre de lignes insérées tu peux retrouver les id.

    Accessoirement ton code ne fonctionne pas et tu utilises une fonction qui va disparaître de php.

    Ca va faire tout drôle à certains dans 2-3 ans quand les versions 5.x de php ne seront plus supportées.
    Oui exacte, pas fait attention mais l'extension mysql pour php est obsolète, elle est plus pris en charge par PHP 7, donc déjà réoriente toi vers mysqli qui est très proche ou alors vers pdo.
    Pour te faire une idée :
    http://php.net/manual/fr/mysqlinfo.api.choosing.php

  7. #7
    Membre éprouvé Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Par défaut
    Bonjour à Tous, merci de vos réponses.

    Version de Php: oui oui no blem c'est juste pour l'exemple
    Par contre la récup des id, c'est la glaise, parce que effectivement je ne récupère que le premier...
    J'ai essayé de les mettre dans un tableau, c'est pareil. Le truc c'est que de suite après je dois faire un insert dans une autre table avec ces clefs.
    Je vais chercher une autre piste.

Discussions similaires

  1. Insert into + boucle
    Par Nana35 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 13/11/2008, 09h04
  2. requête insert avec boucle ?
    Par Kropernic dans le forum Langage SQL
    Réponses: 2
    Dernier message: 15/09/2008, 15h24
  3. INSERT et boucle
    Par Interface dans le forum Langage
    Réponses: 9
    Dernier message: 25/09/2007, 18h06
  4. INSERT par boucle ?
    Par dunbar dans le forum Langage
    Réponses: 3
    Dernier message: 31/08/2006, 11h43
  5. [Conception] INSERT par boucle ?
    Par dunbar dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 14/08/2006, 15h06

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