使用数据库中的复选框值保存核对表

时间:2012-08-29 14:21:03

标签: php mysql database

对于Web应用程序,我需要为用户制作某种清单。清单由特殊管理员帐户管理,只有他可以编辑清单。每个用户都有自己的清单,其中包含某些条件,必须在满足条件时进行检查。我还为任何评论添加了一个文本框(如果有的话)

我在MySQL数据库中构建了几个表: 具有所有注册用户数据的用户数据库

一个名为checklist属性的表,其中包含以下列:

property_idnr | type | description

接下来是一个使用以下列链接用户和属性的表:

link_idnr | user_idnr | property_idnr | comments

现在我的问题是,我是否正确设置了它?另外,我对查询有点问题..在数据库中存储这些值的最佳方法是什么?

我希望有人能够帮助我,如果您需要更多信息,请询问!

1 个答案:

答案 0 :(得分:1)

您的架构看起来很合理。要获取给定用户的列表,您可以使用如下查询:

select clp.type
from CheckListLink cll join
     CheckListProperties clp
     on cll.property_id = clp.property_id
where cll.user_id = <user_id>

我建议添加的是CheckListLink表中的排序列。不同的用户可能以不同的方式排序他们的检查清单。另外,我会在所有表中添加一个datetime列,以便您知道何时创建了记录。

存储值。 。 。那么,您需要一种方法来设置检查列表中的可能项目。然后,您需要一种方法让用户在他们的检查列表中选择他们想要的项目。从数据库的角度来看,这只是各种插入语句的问题(也可能是删除)。更大的挑战是在UI方面。