2016-07-22 2 views
1

Прошу прощения, если этот вопрос задан раньше, но я не смог найти ничего подобного.Получите идентификатор вставленной записи после вставления

Когда пользователь нажимает кнопку «Отправить», в мою базу данных вставляется новая запись, а идентификатор автоматически увеличивается на 1 - например, если последняя запись в базе данных имеет идентификатор 56, новая запись будет иметь Идентификатор 57.

После того, как запись была вставлена ​​в базу данных, как мне перенаправить их на страницу, содержащую переменную URL-адреса идентификатора новой записи? Например: example.com?id=57

<form method="post"> 
    <input type="text" name="text"> 
    <input type="submit" name="submit"> 
</form> 

<?php 
if(isset($_POST['submit'])) { 
    $stmt = $con->prepare("INSERT into database (text) VALUES (:text)"); 
    $stmt->bindParam(':text', $_POST['text']); 
    $stmt->execute(); 
    header('Location: example.com?ID='); // how do I get the ID of the record which has just been inserted? 
} 
?> 
+0

использование последней вставки ID http://php.net/manual/en/pdo .lastinsertid.php –

ответ

2

Получить последнюю вставку идентификатора с помощью $con->lastInsertId; и передать в URL

$stmt->execute(); 
$id=$con->lastInsertId(); ;// get last id 
header('Location: example.com?ID=$id'); 
+0

Спасибо, я попробую это сейчас –

+1

last_insert_id не нуждается в транзакции, потому что возвращаемое значение всегда является идентификатором для текущего соединения – e4c5

 Смежные вопросы

  • Нет связанных вопросов^_^