2011-10-04 4 views
0

Salut, comment puis-je insérer le même ID que le compte créé avec cette instruction dans une table qui est appelée mises en page en utilisant cette instruction mysql?Comment puis-je insérer plusieurs ID dans différentes tables mysql?

 $q = $dbc -> prepare("INSERT INTO accounts (email, password, salt, username, gender, loginIP, shrapnel, joined) VALUES (?, ?, ?, ?, ?, ?, ?, ?)"); 
    $q -> execute(array($_POST['email'], hash('sha512', 'jooosjdsakjdsn' . $_POST['password'] . md5($random)), md5($random), $_POST['username'], $_POST['gender'], $_SERVER['REMOTE_ADDR'], $random, date('Y-m-d : H:i:s'))); 

Est-ce possible avec une jointure? L'ID est un champ d'incrémentation automatique dans les comptes de la table.

Répondre

2

Vous pouvez essayer d'utiliser LAST_INSERT_ID() dans une autre requête immédiatement après.

+0

Travaillé génial, et ceci est une fonction mysql entièrement pris en charge ?? – pv1

+0

Il est dans les documents MySQL à: http://dev.mysql.com/doc/refman/5.0/en/information-functions.html – imm

1

vous devrez ajouter quelques sql à votre script comme ceci insérer dans des configurations (accountsid, .......) VALEURS (LAST_INSERT_ID(), ....). Remarque: si la table des comptes contient également une colonne d'identité et que vous y insérez plusieurs fois que vous ne devez conserver LAST_INSERT_ID() pour la table principale dans une variable distincte, sinon la deuxième insertion dans la table des comptes LAST_INSERT_ID() fonction retournera les ID de la table des comptes

Questions connexes