2010-06-12 49 views
0

我想用mysql和php构建一个网站。这是我尝试的第一个网站,因此我想写一个小计划并获得一些反馈。php和mysql网站设计问题

该网站允许用户在文本字段中添加一些文本作为“评论”。一旦评论被输入到网站中,它将被添加到数据库中,其中可以被其他用户投票。

当新评论添加到数据库中时,它需要创建一个新页面,例如, www.xxxxx.com/commentname或www.xxxxxx.com/?id=99981。

数据库中会有一列“评论”以及每条评论的投票数量。

主页将有两个功能。

1)允许用户添加一个“注释”

2)显示两个表,每个包含最“热门评论” 20行“最新评论”

每条评论都会产生它的一个页面评论将显示在哪里。这里用户可以阅读评论和评论,如果他们愿意的话。

请帮助我解释如何做到以下几点。

- 生成每当注释添加到数据库

- 添加投票在注释数据库中的计票了新的一页。

- 根据票数显示前20位最热门评论。

回答

1

- 生成每当注释添加到数据库

你只需要一个comment.php文件与一个MySQL查询获取给定注释掉数据库的新的一页。我会建议使用评论主键来获得评论。使用重写,你可以有这样的URL:www.xxxx.com/comment/1。如果您需要重定向特定链接结构,请再次询问。

- 为评论数据库中的票数添加投票。

只需在列表中添加一列即可。如果您已经登录了用户,然后想要检查他们的投票,请为投票创建一个新表格,并为另一个表格创建多对多的表格。

- 根据票数显示前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 

任何进一步的问题:

这简直是通过在MySQL查询排序,只选择20个结果呢?

0

这是一个相当宽泛的问题,我不认为我们能够完全帮助你在这里堆栈没有一个完整的PHP博客教程!

但我会尽力指出你在正确的方向。首先,我会说看看wordpress,即使我假设你想制作自己的定制版,wordpress会是代码灵感的一个很好的起点。 (只是一个想法)

我会生成一个新页面的方式,将使一个PHP页面,说comments.php,使用$ _GET变量,获取数据库中的相关记录并显示它。

向上或向下添加投票与向两个提交按钮添加表单一样简单,其中一个值为1,值为-1,提交后将值发送到数据库,现有的投票值为25,并增加它的值,如果你投了25 + 1 = 26,如果你低估了25 + -1 = 24。

显示20个最流行的注释仅仅是使用一些SQL排序,像这样的工作

SELECT * FROM comments ORDER BY votes DESC LIMIT 0, 20 

这语句选择所有的意见表中的列,由得票列decending排序,所以最高值Fi首先,然后将它获取的记录数量限制为20,从那里循环遍历每条记录并显示它的方式。

我希望这至少让你开始正确的道路:)

+0

你的SQL语句中有两个小错误。它被称为“ORDER BY”而不是“SORT BY”,并且“LIMIT”你必须给出一个起点。 (顺便说一下,不是我的投票)。 – 2ndkauboy 2010-06-12 10:26:24

+0

WordPress的源代码大小是7.5Mb。您能否建议,首先要看到创建网站的想法? – 2010-06-12 10:27:42

+0

@ Kau-Boy不,限制你的错误 – 2010-06-12 10:28:32