Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.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
CakePHP动态添加新表单(WYSIWYG)_Php_Html_Cakephp_Wysiwyg - Fatal编程技术网

CakePHP动态添加新表单(WYSIWYG)

CakePHP动态添加新表单(WYSIWYG),php,html,cakephp,wysiwyg,Php,Html,Cakephp,Wysiwyg,我被要求创建一个CakePHP插件,允许用户动态生成表单。这听起来并不是很难(从DB中提取字段,找出什么类型的输入,用HTML显示),但我不明白如何将表单“保存”到新页面 据我所知,Wordpress通过将所有数据存储在数据库中来避免这个问题,并且可以使用短代码将表单“插入”到另一个页面中。看到CakePHP句柄依赖于CTP文件来定义视图(而不是数据库字段),我看不到任何简单的方法来做到这一点 在CakePHP中,WYSIWYG表单编辑器的这一目标是否可能实现(而不必求助于可怕的实践,比如从应用

我被要求创建一个CakePHP插件,允许用户动态生成表单。这听起来并不是很难(从DB中提取字段,找出什么类型的输入,用HTML显示),但我不明白如何将表单“保存”到新页面

据我所知,Wordpress通过将所有数据存储在数据库中来避免这个问题,并且可以使用短代码将表单“插入”到另一个页面中。看到CakePHP句柄依赖于CTP文件来定义视图(而不是数据库字段),我看不到任何简单的方法来做到这一点


在CakePHP中,WYSIWYG表单编辑器的这一目标是否可能实现(而不必求助于可怕的实践,比如从应用程序中编辑CTP/PHP文件)?如果是这样的话,你能告诉我一些我可以用来开发这个插件的策略吗?

我不确定你对动态表单做了什么,对我来说,听起来你在描述两件完全不同的事情

  • 将生成表单的结构以某种方式保存在DB中,key/value,通过php序列化或作为json对象
  • 返回数据,将其设置为视图
  • 编写一个帮助程序,在中再次转换描述表单的结构
    • 在可编辑版本中,恢复表单
    • 解析结构并返回表单字段应执行的任何操作的HTML
  • 您必须编写自己的解析器来查找[gallery id=1]之类的内容,并将其替换为函数调用的结果。假设这就是你想要做的。因此,您必须将“多媒体资料”映射到功能调用。我认为这里最好使用requestAction()

*.ctp文件是WP认为的模板文件,老实说,从开发人员的角度来看,Wordpress只是一个非常笨拙的软件。

也许我可以再详细说明一下(不确定它是否会影响您的答案)。就像Wordpress提供允许最终用户设计表单的插件一样,这个插件也应该允许同样的功能。表格应放在新的页面上(即系统上以前没有的页面)。Cake可以不经过认真的修改(比如编写自定义解析器)就做到这一点吗?这正是我所想的,但在认真考虑解决这个问题的不同方法之前,我不想反对它。非常感谢。