代码之家  ›  专栏  ›  技术社区  ›  munch

存储和访问webapp用户隐私设置的最佳实践?

  •  1
  • munch  · 技术社区  · 16 年前

    如果您允许人们决定谁可以查看他们的用户信息,那么存储和访问这些信息的最佳方式是什么?

    他们将通过以下任何一种方式设置自己的偏好:

    • 基于用户(选择特定用户-即块:“munch”,“dummy”)。
    • 基于复选框(选择一个或多个用户组-即“我的朋友”、“我的网络中的任何人”)。
    • 基于单选按钮(仅选择一组用户-即“所有人”)。

    我目前的想法是,由于信息与正在查看的用户相关,而不是在站点周围单击,因此您必须将这些选项存储在数据库中,并根据任何特定的结果组合运行特定的查询。

    唯一的问题是,可能有大量不同的查询:

    • 7个复选框最多可以有128个不同的组合(2^7)
    • 128个组合=128个不同的优化查询

    无论是在编写查询的时间上,还是在每个页面视图的查询量上(查询以运行另一个查询…Blech!),这似乎都不高效。.

    因为我确信这是以前做过的,我觉得我必须忽略一些事情。有没有更好的方法来使用php/mysql?

    2 回复  |  直到 16 年前
        1
  •  1
  •   jhogendorn    16 年前

    我将把结果预先计算到一个“不能查看”的表中,即如果某个表单中的用户A阻止了用户B(直接或因为他在一个组中),那么该表就会得到一个这样的记录。这是一个在写作而不是阅读上做重活的年纪。

        2
  •  0
  •   lamas    16 年前

    我认为最好的选择是基于无线按钮的。 浏览一个你一直都知道的用户列表也会很痛苦。这个复选框听起来也不坏。

    好。看看这个例子:你在单选按钮组中选择了“所有人”——那为什么有人要对他的朋友隐藏它呢?

    对于用户和您来说,单选按钮都是最简单的方式。

    最好的问候, 喇嘛