我对我目前正在处理的网页有疑问 它被称为“谁查看了我的个人资料”。我的网站上已经有了一个用户系统,还有个人资料系统,但我只需要另一个页面来显示查看我个人资料的人。
所以,假设我是'用户A',我在我的个人资料中分享一些信息。同时,“用户B”和“用户C”查看我的个人资料详细信息。
如何从数据库中获取 - 查看某个个人资料的人/用户?此功能仅对我或“用户A”可见。
答案 0 :(得分:3)
我建议您使用另一个名为profile_views
的表,其中包含2列profile_id
和'guest_id',它们是对users
表的引用
答案 1 :(得分:0)
我不明白为什么需要这样的内容的另一个页面。内容非常小,为什么不把它放在AJAX的DIV检索输入中呢?
所以我们假设我们有profile.php,只需在页面的用户ID中放入一个隐藏属性。现在当一个访客进来时,保存在profile_views中(我正在使用上面给出的表“Haynar”)来自隐藏属性的访客ID和用户ID,并将一个插入语句发送到数据库 - 确认并检查首先如果存在或者您将获得一个独特的约束错误。
现在,当您进入个人资料页面时,只需编写一个简单的ajax方法来检索所有访客ID并提取此数据以填充div。这样它就不在另一个页面中(在我看来是不必要的)并且你得到了你正在寻找的东西。
检查一下,我使用相同的概念来显示当前登录到我系统的所有用户,并使用一个小div来显示结果。我也使用了CSS,所以如果让我们说20个用户登录,div不会溢出,而是div上会出现一个滚动条
希望这有用。
编辑:实际上重新思考,你甚至不需要在这里使用AJAX,可以使用普通的PHP代码在页面加载时检索数据
答案 2 :(得分:0)
此外,要扩展haynar的答案,您应该使用缓存查找表(profile_views)。
您最有可能想要检索特定用户的总体配置文件视图而不是用户对其进行细分,因此您必须在SQL中使用SUM
/ COUNT
,是一个昂贵的SQL语句。
您应该在用户表格中保存此金额,例如在profile_views
列中,并不时更新,例如每小时一次。