Uniqid () возвращает то же значение при возвращении в историю браузера

Я использую функцию php uniqid () для создания уникального идентификатора для каждого заказа.

<?php $order_id=uniqid(); ?>

И ниже по форме:

<input type="hidden" name="ordercode" value="<?php echo $order_id; ?>">

После отправки формы все данные заносятся в базу данных mysql, и пользователь перенаправляется на оплату. Работает нормально, но:
Если я нажму кнопку «Назад» в браузере и вернусь на страницу заказа, ввод с именем codecode содержит старое значение! Это нежелательно, потому что «код заказа» должен быть уникальным в базе данных, чтобы распознавать заказ, когда клиент будет производить оплату. Если я снова отправлю форму, в базе данных будет 2 записи с одинаковым идентификатором.
Я думаю, это связано с кешем браузера. Если так, есть ли способ заставить браузер обновлять страницу при возвращении? Или есть другая причина? Какие-либо предложения?

1

Решение

Есть простой способ добиться этого, вы можете пометить этот столбец код заказа как уникальный из базы данных

ALTER TABLE table ДОБАВИТЬ УНИКАЛЬНЫЙ (ordercode);

-1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]