Sql: insert dans plusieurs tables liées

Fermé
angel lestat Messages postés 233 Date d'inscription jeudi 26 avril 2007 Statut Membre Dernière intervention 17 mars 2015 - 1 févr. 2010 à 15:28
angel lestat Messages postés 233 Date d'inscription jeudi 26 avril 2007 Statut Membre Dernière intervention 17 mars 2015 - 2 févr. 2010 à 22:34
Bonjour à la communauté informatique,
je voudrais exposer mon problème:
J'ai conçu un formulaire pour stocker le profil d'un individu dans ma base de données
En effet je dispose de deux tables:

user(id_user, nom, prenom) et
diplome(id_dipl,titre,description,diplome_user)

id_user et id_dipl sont clef primaires dans leurs tables respectives et sont auto_increment
diplome_user clef étrangère qui fait le lien entre les deux tables;

le formulaire contient les champs pour remplir les deux tables
je voudrais qu'a la soumission on fasse une insertion simultanée dans les deux tables

il serait simple de faire 2 insert mais le problème est que je voudrais avoir dans le champ diplome_user l'id_user de l'utilisateur correspondant.
j'ai eu à lire sur des topic de faire insert select mais j'ai pas pu appliquer.

<?php
insert into user values('','$_POST["nom"]','$_POST["prenom"]');
inset into diplome values('','$_POST["titre"],'$_POST["description"]','select max(id_user) from user');
?>

mais je suis convaincu que la deuxième requête est totalement nulle, je vous prie de bien vouloir m'aider
merci
A voir également:

4 réponses

Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 54
1 févr. 2010 à 16:42
Bonjour,

Tu travailles avec quelle base de données ?
0
angel lestat Messages postés 233 Date d'inscription jeudi 26 avril 2007 Statut Membre Dernière intervention 17 mars 2015 14
1 févr. 2010 à 16:52
je travaille avec mysql 5
0
Defouille Messages postés 388 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 15 novembre 2011 54
2 févr. 2010 à 10:12
Il existe apparemment une méthode pour récupérer le dernier id inséré.

select last_insert_id();


source : https://fernvale.wordpress.com/2007/05/06/last-inserted-id-in-mysql/
0
angel lestat Messages postés 233 Date d'inscription jeudi 26 avril 2007 Statut Membre Dernière intervention 17 mars 2015 14
2 févr. 2010 à 22:34
merci defouille, ca contourne mon probleme mais le resultat est là
dc apres la premiere insertion je recupere l'id et je l'attribut à la seconde table
0