Я пытаюсь получить уникальный идентификатор для последнего добавленного значения в базу данных. Я пытался использовать LastInsertID bu. Я считаю, что это несовместимо с MySQL (http://www.php.net/manual/en/pdo.lastinsertid.php).Получение идентификатора для последнего вставленного значения
$sql = "INSERT INTO discussion_links (link_url, link_title, link_source, publish_date, link_side, img_link) VALUES (?, ?, ?, ?, ?, ?)";
$sth=$db->prepare($sql);
$sth->execute(array($_POST['OP_link_url'], $_POST['OP_title'], $_POST['OP_source'], $_POST['OP_pub_date'], $_POST['OP_disc_side'], $_POST['OP_img_url']));
$op_link_id = $sth->$db->lastInsertID();
Здесь я получаю сообщение об ошибке: PHP Catchable фатальная ошибка: Объект класса PDO не может быть преобразован в строку
Я также попытался сделать эту последнюю строку как:
$op_link_id = $sth->fetch(PDO::lastInsertID);
И
$temp = $sth->fetch(PDO::FETCH_ASSOC);
$temp_op_link_id = $temp['link_id'];
Но ни один из них не работал (получил некоторую ошибку SQL Server 2002 2053).
Спасибо,
$ ID = $ this-> db-> insert_id(); попробуй это? – dude
Возможный дубликат [Как получить последний вставленный ID?] (Http://stackoverflow.com/questions/7008656/how-to-get-the-last-inserted-id) – Hamish
@dude, спасибо за быстрый ответ , Я попытался сделать это сразу после кода PHP и получил ошибку сервера: PHP Неустранимая ошибка: использование $ this, если не в контексте объекта. Мне нужно получить этот идентификатор, чтобы использовать его в другом запросе сразу. – Danconia