这是我几天前发布的问题的后续内容。
基本上,我有一个有六个链接的网站。要访问该站点,用户必须使用LDAP身份验证登录。当他们这样做时,我会获取他们的一些帐户凭据(用户名,名字,姓氏),并将其存储在PHP $ _SESSION变量中。有效;用户可以登录,并且会话数据已成功存储。
现在,我想设置一种方法来跟踪哪些用户点击了哪些链接。基本上只是在他们点击链接时在数据库中存储时间戳。我希望能够看到谁(或没有)点击了每个链接,以及何时。
我可以在单个表中执行此操作/这是一个坏主意吗?我在想这样设置表格:
表(每个子弹指示一列)
基本上上面会说“John”只点击了第一个和第四个链接。其余的都是null因为他从未访问过它们。如果他再次点击#1,它将覆盖更近的日期/时间。
我可以在一张桌子上这样做吗?还是会产生并发症?我觉得我最困难的事情就是在添加信息之前检查用户是否已经在数据库中(即如果John第二次登录,则不会为他创建一个全新的行) )
感谢您的帮助!
答案 0 :(得分:2)
这不是一个好主意。如果你想要第七个链接怎么办?如果用户格式会改变怎么办?
此解决方案需要3个表格:
第三个表格如下:
user_id | link_id | timestamp
-----------------------------
1 | 2 | ...
2 | 2 | ...
1 | 3 | ...
............
答案 1 :(得分:1)
为什么不只是
increment_ID
Account_ID
Link_URL
Timestamp
然后只需为每次点击插入一条新记录。您也不需要管理链接,因为您将存储整个URL路径