ProfiPHPProfiPHP
Категория: Функции баз данных MySQLi

Функция Mysqli_insert_id

Функция Mysqli_insert_id возвращает автоматически генерируемый ID, используя последний запрос INSERT.
mixed mysqli_insert_id( mysqli $link )
Параметр Link являет собой идентификатор соединения, полученный с помощью Mysqli_connect или Mysqli_init.

Функция Mysqli_insert_id возвращает автоматически генерируемый ID, используя последний запрос INSERT к таблице, которая содержит колонку с атрибутом AUTO_INCREMENT, иначе функция вернет ноль.

Другими словами, функция Mysqli_insert_id возвращает значение поля AUTO_INCREMENT, которое было затронуто предыдущим запросом INSERT.

Пример использования функции Mysqli_insert_id:
$link = mysqli_connect( DB_HOST, DB_USER, DB_PASS, DB_NAME );
$query = mysqli_query( $link, "INSERT INTO `table` ( `name`, `city` ) VALUES ( 'User', 'Moscow' )" );
echo mysqli_insert_id( $link );
На других сайтах пишет, что функция Mysqli_insert_id возвращает ID, используя последний запрос INSERT или UPDATE. На самом деле, данная функция возвращает исключительно с команды INSERT. Если выполнить следующий код:
$link = mysqli_connect( DB_HOST, DB_USER, DB_PASS, DB_NAME );
$query = mysqli_query( $link, "UPDATE `table` SET `name` = 'User' WHERE ( `table_id` = '3' )" );
echo mysqli_insert_id( $link );
Результат будет 0, то есть UPDATE для Mysqli_insert_id не работает.

Добавить комментарий

Имя:
Текст комментария: