我正在尝试创建一个包含投票部分的网站。如果用户尚未投票,则需要能够参加之前的民意调查。因此,对于他们进行的每次民意调查,都会在单元格中添加一条注释。
表格看起来像这样:
userid | poll1 | poll2 | poll3 | poll4 /
---------+--------+--------+-------+--------/
001 | Y | Y | | /
---------+--------+--------+-------+--------/
002 | Y | | Y | /
--------------------------------------------/
现在,代码必须为用户 001 选择轮询 3 和 4,并将其呈现给页面上的用户。我一直在尝试几种不同的方法,但似乎找不到正确的代码。
我在网上寻找了一些帮助,但没有找到任何可以解决此问题的内容。
最佳答案
用户
id | name
---+-------
1 | tyrion
2 | cersei
民意调查
id | name
---+-------
1 | first poll
2 | second poll
用户投票
user_id | poll_id
--------+-------
1 | 1
1 | 2
2 | 2
在上面的表结构中,有两个主要对象表和一个名为 UserPolls 的关系表。对于您想要的任何数量的民意调查,这都可以很好地扩展。 然后,如果您想知道给定用户进行了哪些民意调查,您可以执行以下操作:
从 UserPolls 中选择 poll_id,其中 user_id = 1
或者如果你想要相反的结果。给定用户未进行的民意调查:
从 Polls.id NOT IN 的民意调查中选择 id(从 UserPolls 中选择 poll_id,其中 user_id = 1)
注意:这不是经过测试的代码,但您可以大致了解如何设计和规范化表格。
关于php - 使用 php/mySQL 查找特定行中的空白单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24050244/