在浏览器历史记录中返回时,Uniqid()返回相同的值

时间:2015-08-31 15:16:11

标签: php jquery browser browser-cache back-button

我使用php函数uniqid()为每个订单创建唯一标识符。

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

以下表格:

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

提交表单后,所有数据都记录在mysql数据库中,用户被重定向到付款。它工作正常,但是: 如果我按&#34;返回&#34;浏览器中的按钮并返回订单页面,输入命名的ordercode包含旧值!这是不受欢迎的,因为&#34; ordercode&#34;必须在数据库中是唯一的,以便在客户付款时识别订单。如果我再次提交表单,则数据库中将有2条记录具有相同的ID。 我猜这是由浏览器缓存引起的。如果是这样,有什么方法可以强制浏览器在返回时刷新页面?还是有另一个原因?有什么建议吗?

1 个答案:

答案 0 :(得分:-1)

有一种简单的方法可以实现这一点,您可以将此列订单代码标记为来自数据库的uniqu

ALTER TABLE table ADD UNIQUE(ordercode);