【发布时间】:2011-06-30 16:15:23
【问题描述】:
直到最近,我才真正将这个(分页)视为一个问题。当我坐下来专注于它时,我发现自己面临着很多问题。
我喜欢的是一个基本的联系人管理系统,用户可以在其中添加/更新/删除/搜索联系人。搜索部分是我需要有效实现分页的地方。
我的想法(带有 +ve 和 -ve 点)
- 我可以指定
pageNo和offset而POSTing 到我的search.php页面。此页面将触发一个简单的 MySQL 查询来检索结果。由于行数几乎可以达到数千,因此我需要对其进行分页。很简单,但我需要为每个不同的页面一次又一次地触发 same 查询。这意味着,当用户从 page1 转到 page2 时,将触发相同的 MySQL 查询(当然使用不同的offset),我觉得这是多余的,并且正在努力避免。 - 然后我想捕获整个结果集,并将其存储到
$_SESSION,但在这种情况下,如果结果只是巨大怎么办?它会以任何方式影响性能吗? - 在与第二点类似的行中,我想将结果写到一个文件中,这简直是废话! (我只是把它放在这里,作为一个观点。我知道这是真正糟糕的做事方式。)
我的问题:
一个。我实施上述哪种方法?哪一个更好?还有其他方法吗?我用谷歌搜索了它,但我发现大多数示例都遵循上面的第 1 点。
B。我对第 1 点的问题:我们如何依赖 mysql 结果的顺序?假设用户在一段时间后导航到 page2,我们如何确定在第二次期间,第一页的记录没有重复? (因为,我们正在做一个新的查询)..
C。 MySQL 资源到底是什么?我知道mysql_query(..) 返回resource。从某种意义上说,它是否是全局的,它维护对 PHP 脚本的不同调用之间的状态? (我可以在$_SESSION 中维护资源)。
谢谢一百万! :-)
PS:我知道这是一个很长的问题。我只是试图以简洁的方式表达我脑海中发生的事情。
【问题讨论】:
标签: php mysql pagination