我想对在PHP脚本上记住用户所处位置的最佳做法提供一些建议。
因此,我们有一个PHP应用程序,该应用程序的HTML + Js放在前面,在那一面上,我们显示了一个分页的项目列表(通过DataTables)。当用户单击项目时,应用程序将加载一个新页面,其中包含项目说明。
我们想要实现的是,当用户单击浏览器的后退按钮时,将被发送到他/她在列表中的确切位置(精确的页面和行)
我们正在使用DataTables列出分页等等,因此将用户定位在特定行上不是问题。
我有两种方法:
关于上述内容的优点/缺点?
还有其他想法/建议吗?
答案 0 :(得分:0)
您应该始终为用户可以导航到的任何位置发出唯一URL ,这样标准的浏览器导航就可以正常工作。如果您将状态存储在Cookie或会话中(此处没有明显区别),则一次只能存在一个这样的状态,并且用户将无法打开具有不同状态的单独窗口/选项卡。这与HTTP的工作方式背道而驰。
如果您从一页链接到另一页,请在URL中添加参数以表示唯一状态,例如:
如果要在使用Javascript的页面上动态更改状态,则可以添加片段来表达这些状态更改:
您还可以使用Javascript History API来更改URL,而不仅仅是片段。重要的是,您可以读取该URL并再次再现相同的状态。