Php Drupal 6-加载其他内容而不重定向
我创建了一个自定义模块,其中包括一个Php Drupal 6-加载其他内容而不重定向,php,drupal,drupal-6,Php,Drupal,Drupal 6,我创建了一个自定义模块,其中包括一个hook\u submit函数。是否可以在此时加载另一个页面/表单而不必重定向 原因是在submit函数的逻辑中,有一些变量我希望传递到另一个页面,但它包含复杂的数据结构(对象、数组等),这不适合post/get数据 谢谢hook_submit()是表单处理链的末端。一旦它完成了它的任务,你有两个选择:重定向(通过drupal_goto()或返回$form[“#redirect'])到另一个页面,或者什么都不做,在这种情况下,你点击提交按钮的页面将被重新加载
hook\u submit
函数。是否可以在此时加载另一个页面/表单而不必重定向
原因是在submit函数的逻辑中,有一些变量我希望传递到另一个页面,但它包含复杂的数据结构(对象、数组等),这不适合post/get数据
谢谢hook_submit()是表单处理链的末端。一旦它完成了它的任务,你有两个选择:重定向(通过drupal_goto()或返回$form[“#redirect'])到另一个页面,或者什么都不做,在这种情况下,你点击提交按钮的页面将被重新加载
您有几个选项可以将数据传递到重定向目的地$\u会话和最常用的数据库。您还可以在javascript中的Drupal.settings对象中设置复杂的数据值,但在本例中,如果您的最终目标是通过PHP解析该信息,那么这对您没有多大帮助
没有具体的关于你的最终目标的信息,很难提供具体的建议,但是假设使用$SY会话或数据库作为缓存不是你的选择,你可以考虑查看核心FAPI和CoToots的多个表单的相应实现以获得额外的指导。
< P>在Drupal中你可以确定提交表单的路径。为此,您可以使用$form['#action'] = url("<another page>") ;
$form['#action']=url(“”);
在您的表单中,提交后,它会将您带到另一个页面,您仍然可以从该表单中获取所有帖子值。使用$\u post[''']
进行进一步的帖子值检索
希望这会有所帮助。使用jquery的load函数加载另一个页面/表单。这会不会给我带来无法传递PHP变量的同样问题?你可以通过传递url来发送变量,比如
index.PHP?id=3
。我的观点是,我要传递的变量不仅仅是字符串或整数rs,它们非常大和复杂(可能对GET来说太大了)。谢谢你的回答。我希望不是这样,但我会调查$\u会话。再次感谢。另一个选择是通过ajax(D6中的ahah,D7中的ajax)处理表单“提交”操作,然后让表单“交换”“呈现时的内容。希望这有帮助。谢谢你的回答。我的问题是,在提交表单时,我建立了一个复杂的数据类型,对于POST/GET数据来说太大了。对不起,我没有说清楚,谢谢你的回答:)