2

我的网站允许访问者搜索房屋(使用 PHP 和 MySql)。搜索后,他们会看到一个匹配列表,他们可以单击该列表以查看该房屋的详细信息页面。要查看下一个房屋,他们目前必须单击返回,然后在他们想要查看的搜索结果列表中单击下一个房屋。

我想做到这一点,一旦他们点击了一个主页查看详细信息,他们将有一个“下一个主页”和“上一个主页”链接/按钮用于导航结果集,而无需返回搜索结果页面。

我已经看到这样做了,但无法理解如何做到这一点。我假设您必须将初始搜索中的记录集保存在某处,然后在详细信息页面上调用它。而且您必须知道您正在查看 Y 个房屋中的第 x 个房屋。

谁能给我一个关于这将如何工作的广泛概述?我是否将初始搜索结果保存在临时 MySQL 表中并将该表名传递到详细信息页面?或者使用会话变量来保存结果集?请记住,访问者可以在会话期间进行多次不同的搜索。

任何帮助将不胜感激,汤姆

4

1 回答 1

1

完成此操作后,我将当前搜索的详细信息保存在 SESSION 中,然后在需要时重新查询数据库 - 因此您可以在详细信息页面上查询它以生成下一个和上一个链接,并且很快。我通常使用一个名为“parameters”的 SESSION 变量,并将整个 SQL WHERE 语句添加到其中。

如果有人进行多次搜索,这将让他们一次进行一次搜索 - 后续搜索将覆盖已经存在的内容。如果您的用户将使用不同的参数同时进行多个搜索,您需要找到一种方法来区分每个搜索的参数。您可以通过在每个集合前加上对 的调用来为每个集合指定一个唯一名称uniqid,然后您需要确保将唯一标识符传递给详细信息页面,以便它可以计算出它需要运行哪组参数。

于 2012-05-07T17:03:00.430 回答