使用 mysql 和 PHP 处理多个用户评论表单

Processing more than one user comment form using mysql and PHP

我只写了 6 周的代码,所以请多多包涵。

是的,我进行了很多搜索,但也许我所了解的知识不足以有效地表达我的查询。 如果您可以继续阅读并建议我如何用词来表达我的搜索结果,那将是非常有帮助的。我从头开始,自己做所有事情。 我的问题基本上是概念性的,不需要我的代码。

我在本地主机上有一个项目网站,使用 PHP MySQL。我想在每篇文章(无需登录 ATM)下发表评论 boxes/forms。

SO FAR (6 weeks remember): 在 html 和 css + 内容之后,我已经成功地在我的页面中包含了 'comment.php' (html 评论表单)此 "comment.php" 包括 "list_comments.php"。 "comment.php" 然后对 comment_form.php 的操作这个家伙插入到 Mysql 数据库 table 3 个值 $name、$email、$comment 加上 ID。 "header" 重定向回 "comment.php"。 List_comments.php 选择并回显名称和评论。太棒了,我为自己的进步感到高兴。 但是,很明显,如果我尝试在网站周围不止一次地包含它,评论就会出现在 list_comments 所在的任何地方。

每次我在概念上不确定如何去做时,如果没有创建新的数据库和新的表格,我知道可以用另一种方式来做。 我的问题基本上是我有一个我怎么办两个? 如果您能为我指出正确的方向,甚至告诉我正确的搜索短语方式,我将感到欣慰和感激。 提前致谢。 崔佛

如果我对问题的理解正确,那么您的数据库架构(tables 的布局)不允许一个用户拥有多个评论。

您应该以 "object-oriented" 的方式思考这个问题。在您的示例中,您将有两个对象。一个 "User" 和一个 "Comment"。一个"User"有很多“评论。

您可以使用 "users" table 和 "comments" table 在您的数据库中实施此模式。每个 "comment" 行都有一个 "user_id" 字段,它将评论与发布它的用户的唯一 ID 相关联。

如何在 PHP 代码中实现它取决于您。

研究Object Oriented Programming, Object Relational Mapping, and Database Normalization

所以我不确定我是否完全理解你的问题,所以我会总结一下你想问的问题?您已经添加了向特定文章添加评论的功能。现在您想将功能扩展到其他文章,而无需复制和粘贴所有内容.....

如果这是你的问题,这里有一个可能的解决方案。
1. 为名为 article.php(或任何您喜欢的)

的文章创建单个 php 页面 2. 在该站点的 MySQL 数据库中至少创建 2 tables。
一种。 articles - table 包含文章的每个动态部分的列以及主键列。例如,(id、标题、内容、添加日期)。
b. comments - 一个 table,其中有一列用于主键 (id)、评论和文章 id

3. 您必须有一个额外的网页,允许您浏览不同的文章。一个简单的方法是使用类似 /article.php?id= 的方式向他们发送 link。然后 article.php 将使用 $_GET['id'] 来确定数据库查找中使用的文章 ID,并在评论数据库 table 中查找具有相同文章 ID 的评论... .

有 1000 种方法可以对此进行蒙皮,但您已经有了一个良好的开端。我认为缺少的部分是您已经使评论动态化但不知道如何将评论与特定文章相关联。希望这有帮助:)