php - 使用 php 和 mysql 的用户可配置表单

标签 php mysql forms configurable

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

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

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

任何正确方向的指示将不胜感激!

最佳答案

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

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

一些提示:

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

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

  3. 将数据添加到新表 - 使用新表以某种规范化的方式存储数据。

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

关于php - 使用 php 和 mysql 的用户可配置表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1771407/

相关文章:

php - 无法将 Laravel 应用程序部署到 EC2

php - 对于 jquery 脚本中的每个 php 变量

php - 验证器 Zend_Validate_File_IsImage 不能正常工作

mysql - SQL 查询从表中检索下一个可用 ID

php - MySQL LAST_INSERT_ID() 和 FOUND_ROWS()

ruby-on-rails - 为什么 Rails 真实性 token session 是持久的并且对于每个提交不是唯一的?

javascript - 如何在使用 vue.js 提交表单之前显示图像预览?

javascript - jquery/ajax 表单 - 服务器端 php 但得到跨域警告

php - 单个实例上的多个 fetch() 操作

javascript - 以 "verification"模态显示形式和内容