Jaki jest `id` typu `AUTO_INCREMENT` dodanego recordu?
pawkow
Często chcielibyśmy poznać id (przy założeniu, że to ono jest indeksem i ma wartość Auto_increment) jakie będzie miał rekord po dodaniu go do tabeli.
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
w pdo to jest
$db->lastInsertId();
zależy od tego co chcemy osiągnąć - ja potrzebowałem tego kodu, ięc rozwaliłem całego PHPMyAdmina, przeszukałem i mam :)
Myśle że w wielu przypadkach wystarczy mysql_insert_id() jednak czasem trzeba ten drugi kod. Zależy od tego jakie informacje przechowuje tabela (od założeń projektanta)
mysql_insert_id() pokaże id ostatniego JUŻ wstawionego elementu, a nie jeszcze NIE wstawionego.
a nie prościej w jednej linijce - mysql_insert_id()?