Php 如何在';用户';和';他的评论是什么;?
我目前正在编写一个博客,以获得使用php的经验(我制作了一个MVC框架),所以我对这方面还是新手 对于这个问题,我有两张重要的表格:Php 如何在';用户';和';他的评论是什么;?,php,sql,database,phpmyadmin,structure,Php,Sql,Database,Phpmyadmin,Structure,我目前正在编写一个博客,以获得使用php的经验(我制作了一个MVC框架),所以我对这方面还是新手 对于这个问题,我有两张重要的表格: 用户(id、用户名、密码、注册) 评论(id、内容、帖子id、评论作者、日期、编辑日期、编辑人) 在comments-表comment\u中,作者尚未链接到用户id,因为我不确定如何实际执行此操作 一个用户可以写任意多的评论,但是一个评论只能有一个作者 comment\u作者目前有用户名,但我知道我需要id(如果用户被删除,其他人将使用此用户名注册,则评论将是他的
用户(id、用户名、密码、注册)
评论(id、内容、帖子id、评论作者、日期、编辑日期、编辑人)
在comments
-表comment\u中,作者
尚未链接到用户id,因为我不确定如何实际执行此操作
一个用户可以写任意多的评论,但是一个评论只能有一个作者
comment\u作者
目前有用户名
,但我知道我需要id
(如果用户被删除,其他人将使用此用户名注册,则评论将是他的)
我现在应该如何构造表
1.comments\u author\u id
在comments
-表中,id
在用户
中作为外键:
在这种情况下,我将在comments
-表中拥有注释作者的id
,但是用户
不知道他写的注释。如果我想在它的个人资料上显示用户最近的评论,那么我可以通过内部连接
查询获得它们吗
2.)创建一个新表user\u comments(id,user\u id,comment\u id)
在这种情况下,user
和comments
不会知道它的作者/评论
此外,我还有“editedBy”,其中最后一个编辑用户的用户名为。我是否可以将其与用户
-表中的用户名链接,或者是否还应将其与id
链接
我真的被这个问题弄糊涂了,因为我对数据库了解不多;所以我很感激能得到的每一个帮助和建议
如果我需要提供任何进一步的信息或更改某些内容以便更好地理解,请告诉我。最好的方法是创建一个新表
user\u comments(id,user\u id,comment\u id)
。如果你想跟踪每一个更改/编辑的评论或帖子,最好是为其创建另一个表,如果用户只能编辑,那么我认为最好不要生成editedBy
字段。结构完全取决于你想要什么样的跟踪 选择第一个选项是有道理的
正如您所说的,注释只有一个作者,所以只需使用foreignkey到user表
在第二个选项中,您将为不需要新表的数据创建一个新表,以便存储不需要的数据。此外,您还必须在两个不同的表中写入注释,这是添加注释的两种不同操作,它没有提供您可以使用的额外功能。如果注释只有一个作者,则选项1就足够了。同意,我会在用户和注释之间添加关系,将UserID添加到评论和一个简单的连接就足以获得用户的评论。首先谢谢。如果我想对帖子做同样的处理,我还必须创建一个表
用户帖子(id,user\u id,post\u id)
,对吗?帖子只有一个作者。您可以将user\u id
与您的posts表一起使用,无需创建另一个表,因为一篇文章只有一位作者,可能会被许多其他人编辑。这就是为什么如果您跟踪编辑过的人会更好,那么您可以为editPosts
创建一个表。您可以使用user\u id
在您的posts表未重新编译的情况下创建另一个posts表谢谢,那么我如何处理“editedBy”?我想它也应该与id/用户名链接,我能不能也与Miceandmoon的用户
-id]链接?是的,如果你不需要任何额外的数据,比如旧的编辑或。。。