【问题标题】:Send POST data and open remote form filled with post data发送 POST 数据并打开填充了 POST 数据的远程表单
【发布时间】:2014-01-04 01:37:57
【问题描述】:

有没有办法在一台服务器上的 php 中准备表单数据,然后在另一台服务器上的表单中打开并填写该数据?

所以,我在 SERVER/DOMAIN1 上有 mypreparation.php,用于准备数据。在 SERVER/DOMAIN2 上是 form.php,如果设置了 POST 变量,它可以读取 POST 变量并将它们预填充到 input 和 textarea 标签中。

如何准备和发送来自 mypreparation.php (SERVER1) 的 POST 数据,并在浏览器中打开页面 form.php (SERVER2),并使用来自 mypreparation.php 的填充数据?

从用户的角度来看,流程看起来像这样。用户在 DOMAIN1 上,她有一个链接。当她单击链接时,php 准备数据并在 DOMAIN2 上打开带有填充数据的表单,等待用户单击发送。无法使用 GET 发送数据,因为它更大。

这将在没有 javascript 的情况下完成,只需 php1 到 php2 即可创建 html。我控制 mypreparation.php 和 form.php。有任何想法吗?谢谢。

【问题讨论】:

  • 我不确定我是否理解流程,用户是否曾经输入过DOMAIN1 或者用户是否只与DOMAIN2 交互?
  • 用户在 DOMAIN1 上,并且在 DOMAIN1 上她有一个链接。当她单击链接时,php 准备数据并在 DOMAIN2 上打开表单,其中包含填充的数据。
  • 有人吗?来自 DOMAIN1 的 Php1 将发布数据发送到 DOMAIN2 上的 php2,并且 php2 在用户浏览器中打开并带有预填充的数据。有可能吗?
  • 我会更新我的答案。
  • @Digital Chris:好的,正如我同时研究的那样,我发现您的最终解决方案是正确的解决方案。但是,它并不像我想要的那样直截了当。所以我会按照最初的计划用ajax隐形形式来做。无论如何,感谢您的时间和回答。

标签: php forms


【解决方案1】:

经过讨论,您似乎想使用服务器到服务器的通信。这可以通过 cURL 来完成。 Server1 中的 PHP 将通过以下格式的链接向用户提供页面:

https://www.server2.com/someurl.php?secretkey=12341234

同时,server1 会向 server2 提交一个 cURL post 和数据:

secretkey=12341234
otherdata=something
moredata=somethingelse

Server2 将保存表单数据,对其 someurl.php 的请求将使用密钥加载数据并为用户构建表单。

【讨论】:

  • 用户没有表单,只有链接。它是 ajax 函数,所以我想知道当我调用 mypreparation.php 时是否不必动态创建不可见的表单并触发提交,而是在 php 中处理它并将用户重定向到预填充的表单
  • 问题说“这是在没有 javascript 的情况下完成的”,现在你说“这是 ajax 函数”。突然间,我有一种感觉,你根本不知道自己在说什么。
  • 听着,用户有一个链接。当她单击一个链接时,它会通过 ajax 调用 php 文件。这就是javascript的结束。从那里开始,我的问题是是否可以在 php 中完成所有工作。
  • 提供代码。 ajax 是做什么的?为什么不让 ajax 获取数据并提交到服务器 2?
  • 我知道我可以回到 ajax,创建隐形表单并触发提交。我的问题是它可以在没有 javascript 的情况下完成,只需 php 到 php。这个问题中的 Javascript/ajax 是无关紧要的。
【解决方案2】:

像这样?

链接:http://www.whatever.com?var1=123&var2=456&....

在域 2 中,您可以使用 GET['var1'], GET['var2'], ... 提取此数据 并在表单字段中回显。

例子

<form>
  <input type = "text" value = "<?php echo GET['var1']; ?>">
</form>

干杯

【讨论】:

  • 我不能使用 GET 变量,因为准备好的数据更大并且进入 textarea 标签。例如,准备好的电子邮件文本不适合 GET
猜你喜欢
  • 2011-09-25
  • 2023-02-02
  • 2018-06-13
  • 2011-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-10
  • 2020-06-05
相关资源
最近更新 更多