Inscription en 2 requetes
Résolu
Mickael
-
Mickael -
Mickael -
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
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
4 réponses
-
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
..
-
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
-
-
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, ... -
Si c'est bien ça !
PS : Pense à marquer la discussion en RESOLU (lien qui se trouve sous le titre de ta question )
-