Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
每个用户的动态应用程序。。。(PHP MySQL)_Php_Mysql_Forms - Fatal编程技术网

每个用户的动态应用程序。。。(PHP MySQL)

每个用户的动态应用程序。。。(PHP MySQL),php,mysql,forms,Php,Mysql,Forms,因此,我正在构建一个表单,我的用户可以根据他们的需求进行定制,然后接受客户的响应。把它想象成一个谷歌文档表单(我可以登录并制作一个任意大小的表单,有很多动态字段) 创建此功能的典型方法是什么?是否已经有PHP库擅长此功能?到目前为止,我的计划是只考虑他们可能需要的每个字段,并为该用户将布尔逻辑与该字段相关联。换句话说,假设这些是所有可能使用的字段: 名字 电话 电子邮件 城市 陈述 对于我的任何用户,都可以“打开”或“关闭”,以便显示(或不显示)并用于他们的客户端。这似乎是一种工作密集型的做

因此,我正在构建一个表单,我的用户可以根据他们的需求进行定制,然后接受客户的响应。把它想象成一个谷歌文档表单(我可以登录并制作一个任意大小的表单,有很多动态字段)

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

  • 名字
  • 电话
  • 电子邮件
  • 城市
  • 陈述
对于我的任何用户,都可以“打开”或“关闭”,以便显示(或不显示)并用于他们的客户端。这似乎是一种工作密集型的做事方式,我想知道允许他们创建一个完全动态的表单是否更有意义。但话说回来,这对我来说似乎还有很多工作要做

所以问题是,我的逻辑是否合理,以及人们编写代码的标准方式?为什么?是否有任何库可供我自定义到我的WebApp中,以允许完全动态的表单创建


谢谢大家

你想要这样的东西吗?它是一个JQuery Form Builder插件,与服务器端技术无关。

我们以前将其作为一个内部项目构建,用于我们自己的目的。这也是好事,因为它比我们想要的复杂得多。我们采用了定制解决方案,因为当时我们没有看到任何基本上满足您需求的选项:本地存储和高度可定制。我们可能已经找到了一些相近的东西——我记不清了——但我要回答的问题是,你的逻辑是否正确,而不一定是现有的图书馆

我强烈建议你不要考虑他们想要的每一个领域。你会把自己锁在一个很难维护的结构化包中。抽象化是唯一的出路

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

当然,每个字段都在一个关系表中,该表的键控形式为id。此条目存储标签、id、类型(选择、多选、收音机、文本、文本区域)、必需(bool)、顺序、激活或禁用、选项(如tinymce启用等)等

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

起初这并不十分复杂,但当你开始改进东西,甚至想把东西分成几页时,情况会变得越来越糟


重点是抽象的。你最终会更快乐。

我会把他们指向Wufoo…@ceejayoz,它需要集成到我的应用程序的其余部分中。如果我不能在本地存储数据,那么这不是一个选项。。但我会检查一下,如果可以的话。我会把他们指向谷歌文档Form@Paul出于问题和评论中所述的相同原因,我不能这样做,因为我无法通过WebApp访问数据,以便使用谷歌文档进行操作。我需要与应用程序紧密集成。