Получение данных строки вставленной строки (Mysql, PHP, mysqli) - PullRequest
4 голосов
/ 18 декабря 2009

Мне нужно вернуть postid (автоинкрементный PK) строки, когда я ее вставляю.

Я сейчас использую это, чтобы получить

//get postid to return
if($result = $db -> query('SELECT postid FROM posts WHERE title = \''.$title.'\' LIMIT 1')){
        $row = $result->fetch_assoc();
        $json['postid']  = $row['postid'];
        $result->free();

где $ title - это название заголовка недавно добавленной записи.

Есть ли часть класса mysqli, которая позволит мне сделать это одним запросом ?? Возвращает ли $ db -> query () какую-либо информацию, которая сделает это проще и безопаснее?

Я попытался просмотреть документацию mysqli, но не смог найти то, что хотел. Я уверен, что это где-то там.

Несколько заголовков испортят это, и хотя они не разрешены, вы не можете быть слишком безопасными

Ответы [ 2 ]

11 голосов
/ 18 декабря 2009

Есть ли в вашей таблице столбец AUTO_INCREMENT? В этом случае вы можете использовать mysql_insert_id() или mysqli->insert_id, чтобы получить это значение, а затем использовать его для выбора строки. Подробнее здесь .

3 голосов
/ 18 декабря 2009
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...