用户可以使用php和mysql配置表单

时间:2009-11-20 15:53:53

标签: php mysql forms configurable

我们正在构建的在线应用程序(php& mysql)要求用户能够创建自己的数据捕获表单,并将这些数据记录在数据库中,尊重现有的ORM。

如果表单中有“硬编码”,那么我们只需将db表设置为自己存储规范化数据,但是当我们的用户定义表单中包含的表单字段时,我们不确定什么是最好的方法继续实现此功能。

我们是否需要为数据库考虑某种元数据或数据抽象层?谷歌没有太多帮助,因为我们不确定我们需要如何解决这个问题。

非常感谢任何正确方向的指示!

2 个答案:

答案 0 :(得分:1)

许多内容管理系统以不同方式解决此问题。

例如,在Drupal中,用户可以通过CCK module创建自己的自定义内容(使用自定义表单)。该模块定义了用户可以创建的不同类型的字段,然后生成具有特定数据类型的表来存储数据。

一些提示:

  1. 定义字段类型 - 考虑让用户选择不同的字段类型(例如,选择框,字符串,广播)。

  2. 为用户定义的字段创建表 - 每种字段类型都具有特定的SQL数据类型。使用这些数据类型定义表。例如,选择框可能会映射到枚举,输入文本元素可能会映射到varchar列。

  3. 向新表添加数据 - 使用新表以稍微规范的方式存储数据。

  4. 显然有很多不同的方法,但这些只是一些建议。

答案 1 :(得分:1)

我想我找到了解决问题的方法,所以那些遇到类似问题的人都会看看以下的问题 -

http://www.adaniels.nl/articles/an-alternative-way-of-eav-modeling/

http://weblogs.sqlteam.com/davidm/articles/12117.aspx

希望这有帮助。