• 技术文章 >后端开发 >PHP问题

    php如何实现post跳转

    藏色散人藏色散人2020-10-10 09:20:18原创59

    php实现post跳转的方法:首先定义post处理页面url;然后获取当前页面的url;接着将querycan参数解析到数组变量;最后构造表单并跳转即可。

    推荐:《PHP视频教程

    php实现post跳转

    大家否知道php可以利用header('Location')实现get请求跳转。

    php利用curl可以实现模拟post请求。

    但是却找不到php现成的实现post跳转。

    那么问题来了,如果有这个需求该怎么实现呢?

    今天在这里,利用form+js跟大家攒一个php的post跳转的方法。

    index.php(发起跳转页面)

    <?php
    //定义post处理页面url
    $actionUrl = './action.php' ;
     
    //获取当前页面的url
    $url = 'http://' . $_SERVER [ 'HTTP_HOST' ]. $_SERVER [ 'PHP_SELF' ]. '?' . $_SERVER [ 'QUERY_STRING' ];
     
    //解析url
    $parseInfo = parse_url ( $url );
     
    //获取url中的参数部分
    $queryString = $parseInfo [ 'query' ];
     
    //将querycan参数解析到数组变量
    $queryArr =[];
    parse_str ( $queryString , $queryArr );
     
    //循环拼接表单项
    $formItemString = '' ;
    foreach ( $queryArr  as  $key => $value ){
         $formItemString .= "<input name='{$key}' type='text' value='{$value}'/>" ;
    }
     
    //构造表单并跳转
    $content =<<<EOF
    <form style= 'display:none'  name= 'submit_form'  id= 'submit_form'  action= '{$actionUrl}'  method= 'post' >
    { $formItemString }
    </form>
    <script type= "text/javascript" >
    document.submit_form.submit();
    </script>
    EOF;
     
    exit ( $content );

    action.php(跳转目标页面)

    <?php
    //打印post接收到的数据
    echo  print_r( $_POST ,true);

    get访问:

    http://yoururl/index.php?name=jack&age=100&sex=boy&no=001

    真相在这!自动post跳转到了目标页面,且可以在目标页面里面获取到post值。

    以上就是php如何实现post跳转的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:php
    上一篇:php跳转失败怎么办 下一篇:linux php ldap安装配置的方法
    第13期线上培训班

    相关文章推荐

    • php如何使用post跳转页面• php header跳转页面需要注意什么• php页面如何实现几秒后跳转• php跳转失败怎么办

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网