【问题标题】:user search engine - go back and forth用户搜索引擎 - 来回走动
【发布时间】:2012-07-16 15:27:36
【问题描述】:

我正在开发一个搜索引擎。用户可以根据特定参数(例如年龄、性别、城市、头发颜色)搜索其他用户。他还能够以不同的方式对结果进行排序。

在搜索结果页面上,您可以看到 10 个个人资料,如果单击它们,您会进入另一个页面(个人资料页面),您可以在其中获得有关该单个用户的更多信息。

现在在个人资料页面上查看特定用户的用户现在应该可以从搜索结果中来回切换到下一个或上一个用户。因此,您必须存储用户选择的特定参数,并且您还必须一遍又一遍地运行整个搜索查询,因为用户继续从一个用户转到下一个用户。这对我来说看起来不太好,我考虑将所有用户 ID 临时存储在会话中(以前的用户最多 200 个,即将到来的用户最多 200 个)以避免存储参数并在用户每次访问另一个配置文件时运行搜索查询页面。

这是一个好方法还是您有其他解决方案?

最好的问候和提前感谢您的帮助,

弗莱迪

【问题讨论】:

    标签: php sql caching search


    【解决方案1】:

    您可以简单地将 id 作为数组存储在会话中,然后将下一个/上一个链接放置到数组中的下一个/上一个项目。

    【讨论】:

    • 还要考虑在查看搜索时数据是否会发生变化。即 40 名都柏林金发男子变为 20 名纽约生姜女孩 LOL。或者添加一个新条目(搜索顺序的开始)使下一条记录(所有记录下移一条)再次显示当前一条。 +1 布赖恩
    【解决方案2】:

    如果总匹配数很少(例如,少于 200 个),在会话中存储 ID 就可以了。如果您可能期望搜索中有大量结果(以千计),那么更好的解决方案可能是为搜索实现一个临时表。执行搜索时,匹配项的 ID 和名称将根据用户的会话 ID 存储在临时表中。您还需要有一个定期运行并清理此旧数据表的脚本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多