Récupérer l'ID du dernier insert et l'utiliser pour l'insérer dans une autre table avec MySQLi
Pour insérer un enregistrement dans une autre table tout en l'associant au dernier identifiant inséré à partir d'une autre table, vous devez suivre ces étapes :
Créer un incrément automatique Champ
Assurez-vous d'avoir un champ à incrémentation automatique dans votre colonne de clé primaire pour suivre l'ID de l'enregistrement inséré le plus récemment.
Récupérer l'ID de la dernière insertion
Utilisez la fonction mysqli_insert_id() pour récupérer le dernier ID inséré dans la première table. Cet identifiant sera utilisé pour créer un lien vers l'enregistrement nouvellement inséré dans la deuxième table :
$last_id = mysqli_insert_id($conn);
Préparer la déclaration
Créer une déclaration préparée qui insérera les données nécessaires dans la deuxième table, y compris l'association avec le dernier ID inséré :
$stmt = $mysqli->prepare(" INSERT INTO table1 (username, firstname, lastname, image) SELECT ?,?,?,? FROM table2 t2 WHERE username = ? AND t2.id = ? ");
Bind Paramètres
Liez les paramètres comme d'habitude, y compris le paramètre $image avec la valeur du dernier ID inséré :
$stmt->bind_param('sssss', $username, $fname, $lname, $last_id, $username);
Execute Statement
Exécutez l'instruction préparée pour insérer les données dans la deuxième table :
$stmt->execute();
En suivant ces étapes, vous pouvez réussir à récupérer le dernier identifiant inséré dans une table et à insérer l'enregistrement dans une autre table tout en associant correctement les données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!