首页 > 解决方案 > PHP 表单从外部脚本 XML 数据中捕获 POST

问题描述

我有一个 PHP 表单,它发送到一个外部 Web 脚本,然后显示 XML 响应,我需要捕获响应并在我的 PHP 脚本上解析它。

我知道我需要指向自己,但我不知道如何捕获来自外部 Web url 的响应以获取 XML 数据。

使用<form method="POST" action="http://example.net/webaction.php">,webaction.php 脚本将返回 XML 数据。

现在我需要更改<form methond="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">,然后从http://example.net/webaction.php输出中捕获 XML。

更新:http://example.net/webaction.php脚本的输出如下所示,不会被保存或收集,它只返回对提交的表单数据的状态响应。

<datacheck>
<script/>
<webresults>
    <formdata1>167917</formdata1>
    <formdata2>20190101</formdata2>
    <formdata3>10</formdata3>
    <results>
        <code>ACTIVE ( ACT19 )</code>
        <description>
            This product is verified.
        </description>
        <brandinfo>
            ACME Company New York New York
        </brandinfo>
    </results>
</webresults>

有了上面的这些结果,一旦我得到这些结果,我需要以用户友好的方式将它显示在我的 php 页面上。

任何指导或方向将不胜感激!!

谢谢!

标签: phpxml

解决方案


如果我理解正确,您需要的是某种代理。如果是这样,这样的事情可能会做到:

foreach($_REQUEST as $a=>$b)
    {
    $res[]=$a.'='.$b;
    }
echo file_get_contents('http://google.com?'.join('&',$res));

如果您需要 POST 方法,请检查 如何使用 file_get_contents 在 PHP 中发布数据?


推荐阅读