繁体   English   中英

这是从具有多个选择的下拉菜单中存储选项的方法吗?

[英]Is this the way to go for storing options from a dropdown with multiple selects?

细节

我有一个下拉菜单,可以选择多个选项。 在此处输入图片说明

我想轻松快速地在数据库中搜索这些选项。 为此,我选择在数据库中为每个选项创建一个列,如下所示。

userid  | car |cdplayer|computer| 
*********************************
   785  |  1  |   0    |    1   |

每个列都使用TinyInt(1)。 如果选择了该选项,则我将存储值1,否则将存储0。该方法的问题在于,如果有很多选项,则表可能会变得很大。 如果我将选项存储在单个列中,那么我会假设在数据库中搜索这些列会更加困难,但是数据库将变得更小(也许这一点都没有关系)。

您目前使用的方法是否有任何问题? 有没有更好的方法可以实现我想要做的事情?

通常认为这是不良的数据库设计。 由于您必须更新数据库架构并更改所有应用程序以了解此新列,因此很难添加新选项。

更好的解决方案是在选项表中使用option_idoption_name列。 然后,您可以使用带有列user_idoption_id的引用表user_options进行链接。

更好的结构可能是拥有一个用户表和一个选项表,并通过一个optionid链接它们。

userid | optionid |
*******************
  12   |    1     |
*******************
  12   |    3     |
*******************
  35   |    2     |

选项表:

optionid |       value        |
*******************************
   1     |        Car         |
*******************************
   2     |        CD          |
*******************************
   3     |        Computer    |
*******************************

填充<div>当用户从 CakePHP 的下拉列表中选择时的形式</div><div id="text_translate"><p>我有一个表格,用户可以在其中对 select 进行 1-5 的评分。 这些选项中的每一个都是从链接表中提取的,并且都运行良好。</p><p> 我想做的是在 select 框的一侧有一个 DIV,它将更新包含所选选项的更详细描述。 例子:</p><p> 用户选择: 1 - EXCELLENT DIV 填充:优秀 - 一切都按预期工作,您没有任何抱怨!</p><p> 用户选择: 4 - POOR DIV 填充: POOR - 你宁愿死也不愿上班。</p><p> 我可能会稍微修改一下我的描述,但你明白了。</p><p> I understand that in the AJAX helper, I can use observeField, but when I pull up the documentation from <a href="http://book.cakephp.org/view/1368/observeField#!/view/1358/AJAX" rel="nofollow">http://book.cakephp.org/view/1368/observeField#!/view/1358/AJAX</a> I see that the AJAX helper已弃用,取而代之的是 JsHelper + HtmlHelper。</p><p> 做我想做的事情的正确方法是什么?<br> 数据在loadLevel中,当computters.load_level_id改变时,div内容需要显示loadLevels.description。 (这对我来说很有意义,但如果我不清楚,请对 CakePHP 新手友好)</p><p> 编辑:我正在使用 CakePHP 1.3.8</p></div>

[英]Populate <div> in form when user selects from dropdown in CakePHP

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 数据库设计:存储带有多个选择的多个选项的最佳方法 从mysql表显示多个下拉选项 使用来自MySQL数据库的多个选项预填充下拉菜单 MySQL使用PHP从Dynamic Multiple下拉选择选项 AJAX来自多个选择的呼叫 从数据库数据实现多选的正确方法(列表菜单还是单选按钮?) 存储在MySQL表中的多个表决选项 如果用户选择“全部”,如何从所有选项中检索数据 如何创建n级(多级,级联)相关的下拉列表(选择,选项)? 填充<div>当用户从 CakePHP 的下拉列表中选择时的形式</div><div id="text_translate"><p>我有一个表格,用户可以在其中对 select 进行 1-5 的评分。 这些选项中的每一个都是从链接表中提取的,并且都运行良好。</p><p> 我想做的是在 select 框的一侧有一个 DIV,它将更新包含所选选项的更详细描述。 例子:</p><p> 用户选择: 1 - EXCELLENT DIV 填充:优秀 - 一切都按预期工作,您没有任何抱怨!</p><p> 用户选择: 4 - POOR DIV 填充: POOR - 你宁愿死也不愿上班。</p><p> 我可能会稍微修改一下我的描述,但你明白了。</p><p> I understand that in the AJAX helper, I can use observeField, but when I pull up the documentation from <a href="http://book.cakephp.org/view/1368/observeField#!/view/1358/AJAX" rel="nofollow">http://book.cakephp.org/view/1368/observeField#!/view/1358/AJAX</a> I see that the AJAX helper已弃用,取而代之的是 JsHelper + HtmlHelper。</p><p> 做我想做的事情的正确方法是什么?<br> 数据在loadLevel中,当computters.load_level_id改变时,div内容需要显示loadLevels.description。 (这对我来说很有意义,但如果我不清楚,请对 CakePHP 新手友好)</p><p> 编辑:我正在使用 CakePHP 1.3.8</p></div>
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM