进行动态秸秆轮询

时间:2014-01-11 18:44:38

标签: php mysql

我试图为了学习目的而制作类似http://strawpoll.me/的东西。 用户创建一个民意调查,因此民意调查可以根据需要保留选项。

我认为这不应该是一个问题,但我不确定如何在数据库中设置民意调查。 每个民意调查都为自己创造一张桌子吗? 或者是在同一个表中的民意调查,但是是由具有id的行插入的?在那种情况下,我不确定如何设置列..

我需要一个提示让我感动:)

1 个答案:

答案 0 :(得分:3)

民意调查本身在表格poll内。还有另一个名为poll_option的表。我们假设我们有以下民意调查:

  • 姓名:民意调查1
  • 选项1:这是民意调查1
  • 选项2:这不是民意调查5

poll中,有:

例如,

idpoll_namedate_created。然后,poll_option将包含idoption_namepoll_idpoll_id将成为此选项所属的民意调查。

当然需要投票,因此需要第三个表格:poll_votespoll_vote仅包含iddate_createduser_iduser_id是用户的IP,cookie或会话密钥。 Straw Poll会保存一个名为uid的cookie,以确定您是否已参与此投票。

全部放在一起:

TABLE: poll
id | poll_name | date_created
62 | Poll 1    | 2014-01-11 12:34:56

TABLE: poll_option
id  | option_name        | poll_id
844 | This is poll 1     | 62
844 | This is NOT poll 5 | 62

TABLE: poll_vote
id   | user_id | date_created
1104 | 482424  | 2014-01-12 13:53:55