【问题标题】:Dynamic Application per user... (PHP MySQL) [closed]每个用户的动态应用程序......(PHP MySQL)[关闭]
【发布时间】:2012-02-29 01:14:09
【问题描述】:

所以,我正在构建一个表单,我的用户可以根据他们的需要自定义,然后接受他们的客户对它的响应。可以把它想象成一个 Google Docs 表单(我可以登录并制作任何大小的表单,其中包含许多动态字段)。

创建它的典型方法是什么 - 是否已经有 PHP 库擅长这样做?到目前为止,我的计划是考虑他们可能想要的每个字段,并将布尔逻辑与该用户的该字段相关联。换句话说,假设这些是可以使用的所有可能字段:

  • 姓名
  • 电话
  • 电子邮件
  • 城市
  • 状态

可以为我的任何用户“打开”或“关闭”其中的每一个,以便为他们的客户显示和使用(或不显示)。这似乎是一种工作量很大的做事方式,我想知道允许他们创建一个完全动态的表单是否更有意义。但话又说回来,这听起来对我来说还有很多工作......

所以问题是 - 我的逻辑是否合理,并且是人们编写此代码的标准方式?为什么/为什么不?是否有任何可用的库可以自定义到我的 Web 应用中以允许创建完全动态的表单?

谢谢大家!

【问题讨论】:

  • 我只是将它们指向 Wufoo...
  • @ceejayoz 它需要集成到我的应用程序的其余部分。如果我不能在本地存储数据,那不是一个选项。但我会检查它以防万一。
  • 我只是将他们指向 Google 文档表单
  • @Paul 出于问题和评论中所述的相同原因,我不能这样做,因为我无法通过 WebApp 访问数据以使用 Google Docs 进行操作。我需要紧密集成到应用程序中。

标签: php mysql forms


【解决方案1】:

我们之前已将其作为内部项目构建为我们自己的目的。好事也是因为它比我们想要的要复杂得多。我们选择了自定义解决方案,因为当时我们没有看到任何选项来做你想要的:本地存储和高度可定制的。我们可能发现了一些接近的东西——我不记得了——但我要解决的问题的一部分是你的逻辑是否合理,如果有现有的库,则不一定。

我强烈建议您不要考虑他们可能想要的每个领域。你会将自己锁定在一个难以维护的结构化包中。抽象这是唯一的方法。

我们这样做是为了让每个表单都是表单表中的一个条目。很简单。表单名称、客户端id、状态(激活/禁用)等

当然,每个字段都位于以表单 ID 为键的关系表中。此条目存储标签、id、类型(选择、多选、单选、文本、文本区域)、必需(布尔)、顺序、激活或禁用、选项(如启用 tinymce 等)等。

然后每个字段都有一个用于选项的多对一关系表(如果适用)。对于下拉菜单、单选按钮等。

这最初并不是非常复杂,但是当您开始改进事物时——甚至想将事物分成页面——它会变得越来越糟。

重点是 - 抽象它。到最后你会更快乐。

【讨论】:

    【解决方案2】:

    你想要类似http://code.google.com/p/jquery-form-builder-plugin/ 的东西吗?它是一个 JQuery 表单生成器插件,独立于服务器端技术。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-01
      • 2012-04-16
      • 2014-01-03
      • 2012-11-20
      • 1970-01-01
      • 1970-01-01
      • 2012-12-24
      • 2015-08-30
      相关资源
      最近更新 更多