【问题标题】:PHP, jQuery - about instant search realisationPHP、jQuery——关于即时搜索的实现
【发布时间】:2011-11-11 14:05:34
【问题描述】:

我的网站有一个用户搜索,用户可以在其中搜索其他用户。我希望该搜索首先显示所有朋友,当没有找到朋友时,其他用户。但要做到这一点,我必须在每个 keyup 上运行一些数据库查询。好友查询有些复杂,因为好友类型有,相信一直用它不利于性能,但是通过搜索得到所有人是一个很基础的查询。

现在我想将这些朋友保留在一个变量中,但我迷路了。最好的方法是什么。我已经在$_SESSION 中存储了有关用户和朋友的信息,但是拥有那个客户端会很棒。我正在考虑将它存储在一个 cookie 中,但我想知道如果我尝试存储一个包含数百个用户的数组,它是否适合那些 4kb。实现它的最佳方法是什么?有什么想法吗?

【问题讨论】:

    标签: php jquery search


    【解决方案1】:

    您是否使用数据库中的交叉引用表来跟踪谁与谁成为朋友?我认为这是解决问题的好方法,如果您不这样做,那么您只需查询此表即可获得朋友。

    ...because there types of friends...
    这是否意味着有不同类型的朋友?

    简化后,您可以拥有一个包含三列的表:person_idfriend_idfriend_type(如果需要)。 Person_id 和friend_id 是对同一类型id 的引用。当两个人成为朋友时,您将他们的 id 添加到表中以及他们是什么类型的朋友。

    如果您真的想在客户端执行此操作,我猜 localStorage 可能值得研究,但并非所有浏览器都支持它。 localStorage 可能需要大约 10MB(如果我没记错的话)的存储空间。当用户第一次进入网站时加载好友列表。我可能会在服务器端进行会话,但这只是我的意见。

    【讨论】:

    • 是的,我可能不得不坚持一个会话。当我说有类型的朋友时,我的意思是它就像在 twitter、following 和追随者上一样工作。朋友是当两个用户互相关注时,这就是为什么要获得这些关系有点复杂。所以我相信我会坚持一个会话,至少允许在不需要时不要在每个字符上调用 db。那应该暂时完成这项工作。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2019-07-06
    • 2011-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多