有没有一种方法可以将POST数据发送到另一个表单并返回该表单的结果?

时间:2019-06-19 16:02:34

标签: javascript php ajax http post

我需要将表单数据发送到另一个页面,该页面将允许用户在表单中执行某项操作并将该表单的结果返回到原始页面?这可能吗?我知道这不是理想的方法,但是问题是我需要制作一个无需与其他代码集成的“嵌入式”解决方案。我知道这是一个非常具体的要求和方案。

我知道如何发送不需要处理页面上任何用户输入的POST数据。即我可以将POST数据发送到'calculate.php',它将执行数学运算并将其发送回去,但是如果我需要在'calculate.php'上输入其他用户信息,怎么还能将其发送回去?

一个预期结果的例子是:

  

第1页:用户输入数字,然后按提交以转到下一页。

     

第2页:用户输入第二个数字,然后按提交以完成操作。

     

返回第1页:用户收到两个数字的总和。

显然,这是一件很多余的事情,但我正在尝试尽可能简化问题。

编辑:我忘了添加一些限制。

  • 页面1不是我的应用程序,我正在将页面2开发为页面1的“嵌入式”解决方案。本质上,我只能使用第1页调用第2页并从中接收响应。问题是我需要能够允许用户在页面#2上进行输入。
  • 我知道我可以发布到页面#2,然后再次发布到页面#1,但是如果我需要保持页面#1的状态怎么办。例如,如果有打开的Web套接字连接。

请注意,我知道这可能是不可能的,或者是非常困难的,但是如果我不问我永远不会知道对吗?

3 个答案:

答案 0 :(得分:0)

您希望使用PHP或任何其他语言。如果您在服务器端运行Php,则可以使用$ _GET和$ _POST之类的全局变量。

  

第1页:使用发布/获取方法将数据发送到第二页。

     

第2页:使用Globe变量($ _GET和$ _POST)接收所有字段的值。您可以将这些值用作表单字段的默认值。现在,使用post或get方法将此数据提交到第1页。

     

返回第1页:在这里您将从第二页接收第一页的数据,并从第二页接收新发布的数据

答案 1 :(得分:0)

其中任何一个都应该起作用:

  1. 永远不要离开页面-使用AJAX / XMLHttpRequest调出其他页面来处理数据块

  2. 使用“回发”来执行第1页上的所有操作-表单目标位于同一页面上,并且存在状态变量如“ stage = 1”,并且您可以使用JavaScript为任何其他状态添加集合隐藏变量这是必需的。

    ...不同阶段的PHP状态验证和处理...

    ...页面的一个或多个HTML块(PHP,如果可以使用/ else可以在多个页面视图之间进行选择)...

编辑附加限制:

  1. 第2页使用回发或AJAX收集其他信息

答案 2 :(得分:0)

我想出了几种方法。

  1. 更新数据库(或某种类型的数据存储,取决于安全需求),并让Page#1侦听来自单独页面(与数据库位于同一服务器上)中的事件。非常类似于PayPal的即时付款通知(IPN)的工作方式。实际上,我也可以使用它来设置服务器发送的事件。

本质上,第1页将数据发送到第2页,用户将在其中执行该功能,然后第2页将POST数据发送到某个位置(位于同一服务器或第1页的服务器上)的侦听器。更新数据库,Page#1将监听或拉到事件处理程序,一旦数据库更新,事件处理程序将发送更新。

  1. 使用JavaScript子级/父级窗口功能。如果Page#1和Page#2位于同一台服务器上,则可以,但是会造成混乱,并且浏览器有很多限制,并且视浏览器而定。

第1页将在子窗口中打开第2页,在用户执行功能后,第2页将调用一个接受第1页结果数据的函数。