Php Insert ID

Résolu
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009 - 23 déc. 2007 à 11:49
cs_fanti Messages postés 15 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 7 avril 2008 - 1 avril 2008 à 00:52
Bonjour tout le monde

Voilà je me demandais juste un petit truc, et peut être que vous connaissez la réponse...

J'ai deux tables mysql et un formulaire d'inscription pour mes membres.
Je fait deux insert pour des valeurs différentes de mon formulaire.

Par exemple : L'utilisateurs remplis tout les champs, une partie des valeurs s'insert dans une table et une autre partie dans une autre...

Jusque là pas de soucis, maintenant je désirai faire la jonctions (la connexion) entre les deux tables. Pour qu'une fois que le membre
se connect, je puisse, en variable session, récupérer toutes les infos concernant ce membres. 

J'ai bien lu plein de post concernant, mysql_inserid() ou @@INDENTIFY, mais je ne sais pas trop bien l'idée au moment de l'insert.

Voilà, je pense que c'est tout bête !!
Merci beaucoup

Le petit bout de code, on ne sais jamais 

$ajout_table1 = sprintf("INSERT INTO  table1 (nom, prenom, email) VALUES ('$email',  '$nom', '$prenom')");
 
$ajout_table2 = sprintf("INSERT INTO table2 (email, description) VALUES ('$email', '$description')");

25 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
23 déc. 2007 à 20:46
Non. Il faut quand même exécuter la requête avant.
Et attention, tu mets tellement de parenthèses que tu ne mets plus les arguments de sprintf() au bon endroit ;)
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
23 déc. 2007 à 21:11
Salut bonsoir

Là tu va me prendre pour un vrai un boulet.. mais bon je me lance quand même lol

Quelle requête ? 

La requête n'est-elle pas
mysql_insert_id()); ?? 

Donc si je la place en bout de ligne d'insertion dans ma table annonce ce n'est pas bon ?
Et pour le sprintf avec les parentèses elle ne sont pas juste ? Comment aurait-tu fait  tes insertions ?

Je te remet le tout ici en couleur bien illustré comme ca, si tu veux bien, tu sais me dire plus clairement ou est le problème...

Voilà

// 'INSERTIONS dans les base de données
$add_membre = sprintf(
"INSERT INTO membres (
id_user, civilite, email, pass, nom, telephone, gsm, province, cp, compte)VALUES('$id_user', '$civilite', '$email', '$pass', '$nom', '$telephone', '$gsm','$province', '$cp', '$compte')")
;

$add_annonce = sprintf(
"INSERT INTO annonces (
id_ann, email, province, cp, marque, modele, mois, annee, prix, compte, detail_01, detail_02, detail_03, detail_04, detail_05, description, id_user)VALUES(
'$id_ann', '$email', '$province', '$cp', '$marque', '$modele', '$mois', '$annee', '$prix', '$compte', '$detail_01', '$detail_02', '$detail_03', '$detail_04', '$detail_05', '$description', '$id_user')")
mysql_insert_id());

        mysql_select_db($database, $connexion);
        $result = mysql_query($add_membre, $connexion) or die(mysql_error());
        $result1 = mysql_query($add_annonce, $connexion) or die(mysql_error());

Voilà
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
23 déc. 2007 à 22:56
Hellow !!

Voilà, j'ai finialement réussi !
Grâce a votre aides ! Merci beaucoup,
Voici la portion de code avec laquel j'ai surmonté le problème

Convient-elle même si 100utilisateurs s'inscrivent en meme temps ? (soyont ambitieux ^^)
mysql_select_db($database, $connexion);       
$add_membre = sprintf("INSERT INTO membres (id_user, civilite, email, pass, nom, telephone, gsm, province, cp, compte) VALUES ('$id_user', '$civilite', '$email', '$pass', '$nom', '$telephone', '$gsm','$province', '$cp', '$compte')");
$id_insert = mysql_query($add_membre)or die(mysql_error());
$id = mysql_insert_id();
$add_annonce = sprintf("INSERT INTO annonces (email, province, cp, marque, modele, mois, annee, prix, compte, detail_01, detail_02, detail_03, detail_04, detail_05, description, id_user) VALUES ('$email', '$province', '$cp', '$marque', '$modele', '$mois', '$annee', '$prix', '$compte', '$detail_01', '$detail_02', '$detail_03', '$detail_04', '$detail_05', '$description', '$id')");   
 $result = mysql_query($add_membre, $connexion)or die(mysql_error());
 $result1 = mysql_query($add_annonce, $connexion)or die(mysql_error());

Et voila, je ne veux pas poussé mais si ca ne prend pas trop de temps pour vite me dire comment récupérer éfficassement ces données, car j'identifie mes membres en variables sessions.
Je dois utilisé des varID ?

Merci

Bon si vous abandonné d'ici la...je comprend alors merci encore mille fois et JOYEUX NOEL
0
xeroxiss Messages postés 85 Date d'inscription samedi 30 juillet 2005 Statut Membre Dernière intervention 7 mai 2009
24 déc. 2007 à 00:28
Bah voila super

Mais je t'assure que ca marchait lol

Et Comment dois-je faire pour afficher l'annonce en relation avec le membre ?
avec des variables sessions ?
Et dans le cas ou le membre rajoute une annonce par la suite ? (Il n'y aura pas de confusion)

Allais désolé d'être nul, mais les erreurs et l'entraide fait avancé

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_fanti Messages postés 15 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 7 avril 2008
1 avril 2008 à 00:52
Salut
Moi aussi j'ai meme proleme je veux faire l'insersion dans 2 table different et je travailles avec easy-php je sais pas comment cree un cle etrangere cad je travaille juste avec les cle primaire
ALORS comment je peux faire????????
0
Rejoignez-nous