Mengambil ID Sisipan Terakhir dengan "mysqli_insert_id" untuk Sisipan Merentas Jadual
Anda sedang cuba mengaitkan imej dengan data dalam jadual lain. Untuk berbuat demikian, anda perlu mendapatkan semula baris terakhir yang dimasukkan ke dalam jadual pertama dan menggunakan IDnya untuk melaksanakan sisipan dalam jadual kedua. Walau bagaimanapun, kaedah yang anda gunakan untuk mendapatkan ID sisipan terakhir tidak berfungsi.
Penyelesaian:
Sintaks yang betul untuk mendapatkan ID yang dimasukkan terakhir menggunakan antara muka MySQLi ialah mysqli_insert_id($conn). Anda kemudiannya boleh menggunakan ID ini untuk mengikat pernyataan sisipan.
Berikut ialah versi kod anda yang diperbetulkan:
$last_id = mysqli_insert_id($mysqli); // Get the last inserted ID $stmt = $mysqli->prepare(" INSERT INTO table1 (username, firstname, lastname, image) SELECT ?,?,?,image FROM table2 t2 WHERE username = ? AND t2.id = ? "); $stmt->bind_param('sssss', $username, $fname, $lname, $username, $last_id); $stmt->execute();
Pertimbangan Tambahan:
Pastikan bahawa medan ID dalam jadual pertama ialah medan kenaikan automatik. Ini memastikan bahawa ID unik dijana setiap kali baris disisipkan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan ID Terakhir yang Disisipkan dalam MySQLi untuk Sisipan Merentas Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!