我正在尝试使用mysql和php构建一个网站。这是我尝试的第一个网站,所以我想写一个小计划并得到一些反馈。
该网站允许用户在文本字段中添加一些文本作为“评论”。评论一旦输入网站,就会被添加到数据库中,供其他用户投票。
当向数据库添加新评论时,需要创建新页面,例如www.xxxxx.com/commentname或www.xxxxxx.com/?id=99981。
数据库中会有一个“评论”列表以及每条评论的投票数。
主页将有两个功能。
1)允许用户添加“评论”
2)显示两个表,每个表包含20行,其中包含大多数“热门评论”和“最近评论”
每条评论都会生成一个页面,其中将显示评论。在这里,如果用户愿意,用户可以阅读评论和投票。
请解释如何执行以下操作来帮助我。
- 每当向数据库添加评论时生成新页面
- 对评论数据库中的投票计数进行投票。
- 根据投票数显示前20个最受欢迎的评论。
答案 0 :(得分:1)
- 每当向数据库添加评论时生成新页面
您只需要一个带有MySQL查询的comment.php文件,即可从数据库中获取给定的注释。我建议使用注释主键来获取注释。使用重写,您可以使用以下URL:www.xxxx.com/comment/1。如果您需要重定向特定链接结构,请再次询问。
- 对评论数据库中的投票计数进行投票。
只需在包含投票权的表格中添加一列。如果您已登录用户,然后您想要检查他们的投票,请为投票创建一个新表,并为多对多实现创建另一个表。
- 根据投票数显示前20个最受欢迎的评论。
这可以通过在MySQL查询中排序并仅选择20个结果来完成:
// For the recent 20 comments
SELECT * FROM comments ORDER BY id DESC LIMIT 0,20
// For the 20 most popular comments
SELECT * FROM comments ORDER BY votes DESC LIMIT 0,20
还有其他问题吗?
答案 1 :(得分:0)
这是一个非常广泛的问题,我不认为我们能够在没有完整的php博客教程的情况下完全帮助你完成堆栈!
然而,我会试着指出你正确的方向。首先我要说看看wordpress,即使我认为你想制作自己的自定义,wordpress也是代码灵感的一个很好的起点? (只是一个想法)
我生成一个新页面的方式是创建一个php页面,例如comments.php,它使用$ _GET变量获取数据库中的相关记录并显示它。
向上或向下添加投票就像使用两个提交按钮向页面添加表单一样简单,一个值为1,值为-1,提交后将其值发送到数据库,然后执行如果你投票25 + 1 = 26,如果你投票25 + -1 = 24,那么现有的投票价值就会增加25,并增加其价值。
显示20个最受欢迎的评论只是使用一些SQL排序的情况,类似这样的工作
SELECT * FROM comments ORDER BY votes DESC LIMIT 0, 20
该语句选择comments表中的所有列,按投票列降序对其进行排序,首先是最高值,然后将其提取的记录数限制为20,从那里循环遍历每个记录和按照你的意愿展示它。
我希望至少让你开始走上正确的道路:)