将Formapi表单发布到另一条路径? -- 7 领域 和 redirection 领域 和 forms 领域 drupal 相关 的问题

POSTing a FormAPI form to another path?


0
vote

问题

中文

我有一个简单的形式,呈现"命令这个" 按钮。该表单放在节点上。当人们按下该按钮时,我想开始一个订购工作流程。

目前滴水方式似乎是:

  • node/123
  • 上为节点添加表单
  • 用户点击表格提交,post转到 node/123
  • hook_form_submit() 被解雇,接收发布的值Trough表单API。
  • 在该函数中,发布数据存储在会话中;然后drupal_goto()将重定向标头发送到 /shop/checkout ,用户获取 /shop/checkout
  • 代码构建 /shop/checkout 页面必须从会话中检索信息以构建Checkout-Workflow。

如何简单地将帖子发送到 /shop/checkout 并在那里呈现我的html,基于帖子,而不是所有中间转到和seass-spaggetti?

英文原文

I have a simple form, presenting an "Order this" button. That form is placed on a node. When people press that button, I want to start an ordering-workflow.

Currently the Drupal-way seems to be:

  • Add form to node on node/123,
  • User clicks form-submit, POST goes to node/123.
  • hook_form_submit() gets fired, receives POSTed values trough form API.
  • In that function, the POSTed-data is stored in a Session; then a drupal_goto() sends redirect-header to /shop/checkout, user GETs /shop/checkout.
  • Code building the /shop/checkout page must retrieve information from Session to build the checkout-workflow.

How can I simply send the POST to /shop/checkout and present my HTML there, based on the POST, instead of all the intermediate goto and session-spaggetti?

        

回答列表

0
 
vote
vote
最佳答案
 
诀窍是简单地将 $form['#action'] 设置为您要发布的任何网址。

如下:

  //.... $form = array(   //..build the FAPI array ); $form['#action'] = "shop/checkout"; return $form   

在构建表单的地方。帖子被发送到"商店/结账" 。

 

The trick is to simply set $form['#action'] to whatever URL you want to POST to.

Like this:

//.... $form = array(   //..build the FAPI array ); $form['#action'] = "shop/checkout"; return $form 

In the place where you build the form. And the POST is sent to "shop/checkout".

 
 

相关问题

5  将节点连接到菜单链接或将自定义字段附加到菜单链接?  ( Attach a node to a menu link or attach custom fields to menu links ) 
我的客户希望将内容添加到主菜单中的顶级链接,以便在下拉菜单中显示"特色" 内容。他们必须能够选择将显示哪些内容,以及它将与之关联的菜单链接。我认为我有两个选择: 1)在"菜单中" 创建"功能" 内容类型,并添加顶级菜单链接作为字段的下拉菜单。此问题的问题是我不确定如何输出将列出顶级主菜单链接的自定义字段。目前似乎没...

3  用支付网关上的Ubercart商店上的AdWords转换跟踪?  ( Adwords conversion tracking on ubercart store with payment gateway ) 
是可以实现AdWords转换跟踪,以便通过支付门户的考虑转换(客户离开站点暂时退回,并且通常会转换为期,因此暂时停留)? 我已经注入了AdWords跟踪代码来订购完成页面,但它只跟踪计费选项(客户不离开网站)的订单。 如果这是不可能的,是否可以注入订单审查页面的代码,如果是的话? (这是糟糕的,因为一些客户不会完成订...

1  如何从模块内更新节点的文件字段?  ( How do i update a nodes file field from within a module ) 
我有一个文件: /tmp/new.zip ,我有一个节点, $node ,具有文件字段, <a>0 。目前, <a>1 是保存到 998876612 字段中的文件。我想把 <a>3 放在那里。 我现在有什么: <a>4 <a>5 在这里失败,因为 <a>6 应该是一个数组,而不是一个对象。我想象有一个函数...

1  如何设置响应URL以使用HTTPS?  ( How can i set a response url to use https ) 
我有一个JSON响应,我需要强制在直播服务器上使用HTTPS。 所以我需要检测响应URL是否使用HTTP或HTTPS。 如果它使用HTTP我需要将其切换到HTTPS。 如何强制标题使用https? ...

0  显示消息或块当查看页面为null或空  ( Display message or block when view page is null or empty ) 
我有一个 Content Type : Events ,我已经创建了3个事件,他们目前 published 并显示在 Page IE Display as View 。 如果没有发布 Events 那么它应该将自定义消息显示为"无事件" 或"块" 。 我正在尝试使用null值的视图,但我无法得到它。是否有这样的东...

0  Drupal Wysiwyg编辑器  ( Drupal wysiwyg editor ) 
当人们添加评论时,我想有一个简单的wysiwyg,当人们编辑基本页面的正文时。 看起来像这样的东西: 任何想法? ...

17  如何通过比较2字段来筛选视图。如果字段-A <FIELD-B  ( How to filter view by comparing 2 fields if field a field b ) 
我有一个有2个价格字段的产品内容类型。 我想创建一个显示所有产品的视图,其中Price-a低于Price-b。 我希望我能只能添加一个过滤器,然后选择价格 - 然后选择工作量小于并将值设置为price-b,但是您不能这样做。 我已经研究了一个观点钩子,主要是hook_views_query_alter但没有运气。 我...

2  可以在服务器中重命名上传的文件以避免名称碰撞?  ( Can uploaded files be renamed in the server to avoid name collision ) 
我希望我的网站托管一些图像。用户能够将图像上载为内容类型。 如果两个用户创建内容并使用完全相同的名称(MyImage.png)创建内容并上传图像,则旧图像文件是否会在服务器中覆盖(因此,两个内容条目都将最终包含相同的图像文件)? 如果是的,它是相当令人不安的。所以现在我想知道:有一个模块是否重命名上传的文件,以便它不...

0  如何构建与清洁和“脏”URL兼容的链接?  ( How to build links compatible with clean and dirty urls ) 
我有一个不支持Clean URL的开发网站,我的生产网站确实支持它们。 如果我在节点的主体中构建链接,如: <a href="view-something/4,7">View something</a> 这在我的生产网站上显示了OK,但在开发网站时提供了404个。 如何构建普遍的良好网址? ...

1  在Drupal 7中为同一图像提供几个下载选项  ( Provide several download option for same image in drupal 7 ) 
有人会有什么想到如何在Durpal 7中创建同一图像的几个下载选项。 示例网站是: http://www.travesto.com/content/101jpg -Anime-Airmated 其中启用了几个下载选项。 我想为我的生日照片创建类似的选择。我认为可以是视图模块在这里使用。但不确定。如果有人有任何想法这样...

0  由于open_basedir限制,我无法启用最简单的最简单  ( I cant enable simpletest due to open basedir restriction being in force ) 
由于我的Drupal7 Installaton驻留在运行PHP 5.2.12的Linux服务器上,我无法启用SimpleTest。我在php.ini文件下找到了该指令,但它已经在那里发表评论。 当我尝试在我的模块配置中启用最简单时,我会看到以下错误: "测试框架需要禁用PHP Open_Basedir限制。检查您的W...

0  使用答案模块服务API奇怪  ( Service api acting strange with answers module ) 
我目前正在开发一个Android应用程序,它使用休息来与Drupal沟通 我已经设置了服务模块,并使用正常的"帖子" 内容类型节点 但是,如果我发布 question 节点从答案模块,它不起作用。 所以,我发布了这样的json字符串: {"node": { "title":"REST question", ...

1  如何在网站处于维护模式时启用Google Analytics?  ( How to enable google analytics while site is in maintenance mode ) 
我想知道有多少用户访问当前处于维护模式的网站。我已经安装了Google Analytics模块,但它没有将Google跟踪代码添加到维护页面,因此Google Analytics说"跟踪未安装" 。 如何在站点处于维护模式时启用它? ...

2  在User / X /和User / X /编辑页面上显示UID  ( Displaying uid on user x and user x edit page ) 
我想在 user / x 和用户/ x /编辑 uid (只读)用户的 uid (只读)页面。 通过使用下面的函数,我设法显示 user / x /编辑页面上的 uid 。 function my_module_form_user_profile_form_alter(&$form, &$form_state, ...

1  表单构建器模块不在Drupal 7中工作  ( Form builder module not working in drupal 7 ) 
可以有人确认是否表单构建器模块正在工作。我查看 .module ,似乎路径仍在使用Drupal 6格式。 ...

1  视图:公开过滤器 - 在特定日期集之间过滤掉结果  ( Views expose filter filter out results between a specific set of dates ) 
我有一个视图(内容类型= CAR,创建日期过滤器"公开" 和某些字段以显示在表中的结果)。 是否有任何方法可以在使用过滤器选择的日期中显示未创建的所有节点? 谢谢 ...

2  Drupalgetajax的Drupal测试  ( Drupal testing with drupalgetajax ) 
我正在努力为ajax api写一些自动测试,并获得奇怪的结果。如果我直接查看页面,我会看到以下输出,由drupal_json_output发送: {"guid":"8e2a179e-c901-8744-05fc-e80de9500dd6","success":1} 我的单元测试命中相同的URL。这是测试功能...

6  如何使用视图列出与给定介绍2配置文件相关联的用户?  ( How can i list the users who are associated with a given profile2 profile using ) 
我有一个具有组织内容类型的站点。每个组织都有一个关联的资料2配置文件,该配置文件包含对描绘组织层次结构的分类词汇表的引用。当用户注册时,它们会呈现与它们所属的组织关联的给定配置文件2配置文件。 我正在创建一个需要显示以下内容的视图中的报告: 组织 层次结构 用户 我可以建立组织和配置文件2的简介和配置...

1  #ajax回调未在选择(或其他)字段上射击  ( Ajax callback not firing on select or other field ) 
我有完全相同的问题,如此: http://drupal.org/node/1335568< / A> 也就是说,要转发OPS问题,我有代码如下所示。但是,当我对选择框进行更改时,"更改" 事件不会触发。随着回调没有运行。 这个模块的作者回答了但坦率地说,他的反应对我来说没有意义。 他的回复: "这些不是我必须具体...

2  Drupal安装无需设置“(MultiSite)运行  ( Drupal installation running without settings php multisite ) 
我们打算实现的是设置drupal.abcd.com作为MultiSite Setup的主要安装,ABCD.com,XYZ.com,PQRS.com是多站点设置的子站点。 主安装(drupal.abcd.com)应包含默认的Drupal安装(使用Bartik主题),ABCD.com应该具有内容的ABCD主题。 dr...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.