2

我想让我的用户创建他们自己的投票,这样他们就可以将我的代码粘贴到他们网站的某个地方,并且用户可以给他们自己的游戏角色评分(1-5 星评分)。

我想为此目的使用 jQuery 或 javascript,但我不知道如何开始开发类似的东西。它应该不会以任何方式被欺骗,所以我想将投票记录存储在我的数据库表(MySQL)中。

您可能对这个案例有一些经验,所以我正在等待您的建议。

4

2 回答 2

2

简而言之,这就是我要做的事情

首先,您将在某个地方托管一个 javascript 文件和星星的图像,最好是在 CDN 上。

其次,您需要设置一个可以通过 JSONP 发送和接收数据的 php 文件(或 java 或 ruby​​ 或任何您喜欢的服务器端)。

从这里您要求您的用户在文档头中简单地包含远程 javascript 文件,并div在页面上使用特殊类来表示该星级评定者(对于本示例.star)。

任务:

  1. Javascript:使用您的星图填充所有实例<div class="star"></div>并进行设置。

  2. Javascript:通过带有完整标识符的 JSONP 从服务器请求当前评分平均数(参见步骤 4)。

  3. PHP:使用标识符查找到目前为止的预定平均星级,以 JSON 形式返回当前平均评分。如果未找到,则在 JSON 中返回“未评级”状态。

  4. Javascript:样式星号,使它们看起来都正确,或者显示从 ajax 接收到的当前评分平均值,或者显示未评分状态。

  5. Javascript:设置基本行为(悬停样式更改等)

  6. Javascript:创建与星星的点击事件绑定。当用户单击时,您必须通过 AJAX JSON 向服务器发送有关评级的信息。此信息需要包括评分本身以及评分者的 url 和任何其他标识符。

    就像是:

    {
         url : 'http://endUsersite.com/pagetoberated.html',
         starId : 'pictureOfBillMurray',
         rating : 4,
         raterIP : 192.168.1.130
         date   : UTCstringhere
    }
    
  7. Javascript:重新设计以显示正在进行的评级并防止未来的 ajax 被点击。

  8. PHP:捕获 JSON,处理并将其存储在 mySQL 中

  9. PHP:成功存储后,使用 JSON 响应 ajax 调用,说明评级成功

  10. Javascript:在获得 JSON 的“成功响应”后,样式星显示成功评级。

  11. PHP:处理评级以确定新的平均值。

您很可能还希望在服务器端实施某种计时系统,以防止来自同一 IP 地址的垃圾评级。

于 2012-05-26T00:44:47.910 回答
0

显然你不会看到他们的服务器端代码,但至少你会看到客户端接收-存储-计算-发送的内容。

于 2012-05-26T00:39:59.930 回答