【发布时间】:2016-10-11 13:00:19
【问题描述】:
我有一个问题,我正在为一家公司编写一个系统,我希望它尽可能安全和健壮,但现在我陷入了困境。 我有一个产品列表,登录的员工可以在其中编辑、删除或发布(打印)产品规格。
假设我是该系统上的登录员工。当我从产品列表中单击一个产品,然后单击发出(打印)时,javascript 将通过 POST 将数据发送到下一页(是的,它必须是 JS,因为页面的设计)。
所以下一页会显示有关该产品的正确信息(因为 POST 将产品 id 传递到下一页,然后实现 SQL 查询并获取所有信息)。
现在,在该页面上,我可以验证所有信息是否正确,然后再次单击发出(打印)以最终打印规格。但是在这里我遇到了一个警告:下一页如何知道产品ID?我不能使用 POST,因为没有可发布的内容..
Cookie 是为此类东西设计的,但我认为当我在同一个浏览器上登录两个选项卡然后同时在两个选项卡上单击打印时,同一个 Cookie 将被调用两次并被覆盖两次(冲突),因此,产品 ID 可能会被交换。
$_SESSION我相信我也不能使用,因为如果两个用户登录同一台机器,数据也会被交换,就像在 cookie 中一样。
现在,在“支持”同一台计算机甚至同一浏览器上的多个并发用户的页面之间传递数据的“最佳”做法是什么?
【问题讨论】:
-
看看
localStorage;) -
@SteevePitis 不错的方法。我在搜索时发现了一个更好的解决方案:“sessionStorage”。那将是一个很好的答案,所以如果我是你,我会用它来“回答”这个问题。谢谢,这似乎是迄今为止最干净的解决方案。
标签: javascript php cookies