douwan4993 2015-12-15 21:28
浏览 37
已采纳

PHP将json结果发布到自定义URL

By default on my web service I must make a post request to custom user's url. I can post the array but I would like to post request as a json payload, the code below could be the post data, but I cannot get the data from PHP.

function redirect_to_customer($result = [], $redirect_url = "")
{
    $html = '<html xmlns="http://www.w3.org/1999/xhtml">
                <head></head>
                <body onload="closethisasap();">
                <form name="redirectpost" method="POST" action="' . $redirect_url . '">
        ';
    if (!is_null($result)) {
        $result = json_encode($result);
        $html .= '<input type="hidden" value="' . str_replace('"', "'", $result) . '"> ';
    }
    $html .= "
    </form>
    </body>
    <script type=\"text/javascript\">
                        function closethisasap() {
                            document.forms[\"redirectpost\"].submit();
                        }
                    </script>
    </html>";

    echo $html;
}

result of this code is :

<html xmlns = "http://www.w3.org/1999/xhtml">
    <head>
    </head>
    <body onload = "closethisasap();">
        <form name = "redirectpost" method = "POST" action = "http://www.sample.com/response.php">
            <input type = "hidden" value = "{'code':'-103','message':'order_id must be unique'}">
        </form>
    </body>
    <script type = "text/javascript">
        function closethisasap()
        {
            document . forms["redirectpost"] . submit();
                }
    </script>
</html>

response.php user's file content :

<?php
print_r($_POST);
?>

after post data i get empty array

  • 写回答

1条回答 默认 最新

  • douzhunlan5930 2015-12-15 21:32
    关注

    All inputs including <input type = "hidden" need a name, so name = "something".

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch