gpt4 book ai didi

php - 服务器和客户端分页到底是什么?

转载 作者:可可西里 更新时间:2023-11-01 13:36:06 26 4
gpt4 key购买 nike

服务器端分页是分页脚本计算数据库中的条目数然后建立链接吗?我所知道的是,如果有大量数据并且客户端使用 javascript,服务器端会更快更好吗?

什么构成分页脚本服务器端或客户端?

此外,现在我打算使用 this pagination这就像挖掘风格。有人可以告诉我这是否是服务器端分页吗? (对不起,如果我的术语不正确)

最佳答案

服务器端分页:

服务器从用户那里获取一些参数(当前页面编号、排序等)并执行所需的任何搜索以获取相关记录。这些与更多页面的链接等一起发送给客户端。

每次用户单击链接时,您都会刷新页面以显示新数据。

在以下情况下有用:

  • 有很多结果,或者每个结果的负载都很大
  • 查找/处理结果非常耗时
  • 用户很少会越过第一页

不太好,因为:

  • 每次点击都是到服务器的一次往返,这可能需要一些时间
  • 维护状态是一种 PITA

客户端分页:

服务器将所有可用记录发送到客户端,并使用 Javascript,将这些结果拆分为页面并在客户端呈现。更改页面或项目排序与即时一样好,不需要服务器交互。这使得在服务器端缓存结果变得更加容易。

在以下情况下有用:

  • 结果不多(只有几页)
  • 用户会使用很多页面(因此发送额外的数据不是浪费)
  • 拆分表单:因为每一页的输入只是被隐藏而不是被删除,所以整个表单可以在一个表单提交中发送。

不太好,因为:

  • 初始页面加载量要大得多
  • 可能会给没有开启 JS 的用户带来问题(虽然优雅降级是很有可能的)
  • 您可能需要将显示逻辑复制到 Javascript 中。

混合方法

编写您的应用程序以充分利用服务器端分页。一旦成功,使用 javascript 拦截所有更改页面或顺序的链接,并通过 AJAX 发送这些请求。调整您的服务器端脚本以仅返回任何给定页面所需的 HTML,并且当它响应 AJAX 请求时,它周围的任何页面都不会镶边。

好处:

  • 每次翻页的最小负载 = 更快的响应时间。
  • 完全可扩展。
  • 完美降级。

关于php - 服务器和客户端分页到底是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2807755/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com