Inscription en 2 requetes

Résolu/Fermé
Mickael - 28 févr. 2017 à 17:10
 Mickael - 1 mars 2017 à 16:35
Bonjour à tous,

Je souhaite créer un process d'inscription qui alimente 2 tables de la meme bdd à partir d'un seul formulaire :
info_utilisateur (id,mail, mot de passe, prenom)
info_moto (id, id_utilisateur, marque, modele, puissance)

Comment dois je faire pour affecter l'id de la table utilisateur à ma table info_moto svp ?

J'ai cherché coté jointure sql mais je ne vois pas comment récupérer l'id de l'utilisateur.

Un grand merci d'avance,

Mickael





A voir également:

4 réponses

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
28 févr. 2017 à 17:56
Bonjour
Tu dois faire deux requêtes et utiliser la.fonction lastinsertid en mysql.
Si c'est un autre sgbd dis le nous car il existe des équivalents
..
0
Bonjour Jordan,
Merci pour ta réponse.
Je suis effectivement sur mysql.


Je viens d'effectuer quelques tentatives avec
$last_id = $bdd->lastInsertId(); à la suite de ma première requete

Mais je ne sais pas comment récuperer l'info, j'ai tenté des choses mais j'obtiens 0 ;
Dois je le mettre dans un input ?
<input id="idmembre" name="idmembre" value="<?php $last_id; ?> 


ou dans la 2 ieme requete sql ?


$insertmbr = $bdd->prepare("INSERT INTO membre(mail, motdepasse, prenom, nom) VALUES(?, ?, ?, ?)");
$insertmbr->execute(array($mail, $mdp, $prenom, $nom, $codepostal, $telephone, $dateinscription));
$last_id = $bdd->lastInsertId();


$insertmoto = $bdd->prepare("INSERT INTO opmoto(idmembre,marque,modele) VALUES(?,?,?)");
$insertmoto->execute(array($idmembre,$marque,$modele));




Merci par avance
0
Résolu :
Je l'ai mis dans ma requete.
Je ne sais pas si c'est correcte mais cela fonctionne.


$insertmoto->execute(array($last_id, ...
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 4 649
1 mars 2017 à 16:34
Si c'est bien ça !

PS : Pense à marquer la discussion en RESOLU (lien qui se trouve sous le titre de ta question )
0
C'est fait .
Merci bcp Jordan !
0