繁体   English   中英

记住用户在php上的最佳做法

[英]Best practices on remembering where the user was on php

我想对在PHP脚本上记住用户所在位置的最佳做法提供一些建议。

因此,我们有一个PHP应用程序,具有HTML + Js前端,并在该前端显示了分页的项目列表(通过DataTables)。 当用户单击项目时,应用程序将加载一个新页面,其中包含项目说明。

我们要实现的是,当用户单击浏览器的后退按钮时,将被发送到他/她在列表中的确切位置(确切的页面和行)

我们正在使用DataTables列出分页等等,因此将用户定位在特定行上不是问题。

我有两种方法:

  • Cookies (客户端) :因此,每次用户更改DataTable中的页面时,我们都会存储一个cookie。 每当用户返回页面时,我们都会读取Cookie并将用户定位在该特定页面/行上。
  • 会话 (服务器端) :每次用户进入项目页面时,我们都会存储一个带有项目ID的会话变量。 每当用户返回项目列表时,我们都会读取会话变量,并生成跳转到项目所在的特定页面/行所需的javascript。

关于上述优点/缺点?

还有其他想法/建议吗?

您应该始终为用户可以导航到的任何位置发出唯一的URL ,然后标准的浏览器导航就可以正常工作。 如果您将状态存储在Cookie或会话中(此处没有明显区别),则一次只能存在一个这样的状态,并且用户将无法打开具有不同状态的单独窗口/选项卡。 这与HTTP的工作方式背道而驰。

如果从一个页面链接到另一页面,请在URL中添加参数以表示唯一状态,例如:

如果要在使用Javascript的页面上动态更改状态,则可以添加一些片段来表达这些状态更改:

您还可以使用Javascript 历史记录API,以不只是片段的其他方式来更改URL。 重要的部分是您可以读取该URL并再次再现相同的状态。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM