как создать post_id для нового поста в социальной сети - PullRequest
0 голосов
/ 28 января 2019

Я хочу создать идентификатор для нового сообщения, например, 00001 , 00002 , однако в то же время мне нужно получить post_id для присвоения имени URL-адресу изображения xxx/00001_1.jpg.Так я должен реализовать это с mysql(auto_increment) или php / java API?

Ответы [ 3 ]

0 голосов
/ 28 января 2019

Вы не можете использовать автоинкремент, потому что автоинкремент всегда начинается с 1. и вы используете 00001. Таким образом, вы должны добавить идентификатор вручную.прежде всего получить последний вставленный идентификатор.и когда вы будете вставлять новые данные, вы должны сделать +1 с last_inserted_id. подобно этому.

$last_inserted_id=SELECT LAST_INSERT_ID();

во время вставки используйте last_inserted_id и + 1.

0 голосов
/ 28 января 2019

Вы можете запустить два запроса одновременно 1) вставить сообщение в базу данных mysql, чтобы получить идентификатор последней измененной строки.2) обновить эту конкретную строку с помощью идентификатора, который вы выбрали, и выполнить команду обновления таблицы для этого конкретного идентификатора строки с новым именем 001.jpg Комментарий, если вам нужен реальный рабочий код

, и auto_increment выдастВы числа от 0 тоже так далее.Если вам нужны такие числа, используйте php base_convert ()

Я продолжаю с примером кода, который я сказал.

Первый запрос будет похож на

INSERT into table (name, post) VALUES ('$NAME', '$POST_STRING') ;

$ lastID = mysqli_insert_id ($ con);

** Второй запрос на обновление для вставки изображения будет выглядеть как **

UPDATE table SET img = '$lastID' WHERE Id = '$lastID' 
0 голосов
/ 28 января 2019

Для схемы да, просто используйте auto_increment.

Я не уверен насчет java, но в php есть функции для возврата последнего вставленного элемента: Как получить последний вставленный элементID таблицы MySQL в PHP?

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