3

我正在开发一个小型发布系统,以便我可以在我的网站上发布帖子,人们可以喜欢和不喜欢它。

它看起来像这样:

投票系统

目前,您可以根据需要多次投赞成票和反对票。我知道如何使用 JavaScript 使图像不可点击,但我还需要一种在 PHP 中执行此操作的方法,因为有人可以使用 fireBug 或 Chrome 控制台再次使按钮可点击。

这可能是我实际上在 PHP 中做的第一件事,所以我仍然是初学者。感谢您的任何建议。

4

3 回答 3

9

我不会只为您编写代码,脚本站点上可能有几十个可行的示例。以下是一些提示,可帮助您指明正确的方向:

会话变量 - $_SESSION[]- 检查是否设置,然后在投票后设置。只要他们不关闭浏览器,他们就无法再次投票。

Cookies - $_COOKIE[]- 与会话相同,但即使关闭并再次打开浏览器也可以保留。

IP 地址 - $_SERVER['REMOTE_ADDR']- 在 MySQL 表中记录 IP 和投票。

登录系统 - 只允许经过身份验证的用户投票,然后在数据库中跟踪投票。

以上的任何组合都是可以接受的。希望这能让你指出正确的方向。

于 2012-07-30T21:20:32.500 回答
6

既然你要学习这个,我不会发布任何完整的代码。不过,我可以给出一个概述。

最好的方法是将投票存储在数据库表中(可能是 MySQL):

| vote_id | user_id | post_id | vote |

在哪里:

  • vote_id是一个自动增量列,为每个投票创建一个唯一的 ID
  • user_id是提交此投票的用户的标识符
  • post_id是用户正在投票的帖子的标识符
  • vote确定此投票是向上还是向下。

现在,您可以形成查询以确定是否有人已经对该帖子进行了投票,并采取相应的行动。

于 2012-07-30T21:18:36.080 回答
0

您需要在服务器端验证它,即在 PHP 代码中。您可以通过 IP 地址(如果未登录用户/访客)或用户名(对于已登录用户)执行此操作

您无法通过客户端验证来阻止用户。

于 2012-07-30T21:18:09.497 回答