2009-05-21 6 views
0

en utilisant php et mysqlla création de deux lignes en même temps avec une relation clé étrangère

J'ai deux tables, une table d'utilisateurs et une table de profils.

Lorsqu'un nouveau compte est créé sur mon site, les lignes utilisateur et profil sont créées en même temps.

Je souhaite qu'une clé étrangère fasse référence à la table des utilisateurs dans la table des profils afin que les informations de profil des utilisateurs soient stockées dans une table séparée. Mes questions sont, comment puis-je m'assurer que la clé étrangère lie à la table de profils correcte. La façon actuelle de procéder est la suivante: après la création de la nouvelle ligne user and profiles, j'interroge les profils par ordre décroissant pour obtenir la dernière ligne créée et saisir l'identifiant de profil et l'insérer dans la table des utilisateurs ID de profil référence de clé étrangère. Je suis sûr qu'il doit y avoir une meilleure façon de faire cela .. n'est pas là?

Répondre

2
  • Créer un utilisateur avec mysql_query();
  • En supposant que la clé primaire de la table users est un champ d'incrémentation automatique, appelez mysql_insert_id();
  • Utilisez-le comme clé étrangère lorsque vous insérez le profil.
+0

+1 Trop rapidement. ;) –

+0

Aye, assez simple pour être honnête. – Kezzer

+0

IMHO le seul bon moyen pour mysql. Les autres sont des sortes de hacks. – Jet

Questions connexes