视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
php如何实现post跳转
2020-11-02 18:14:06 责编:小采
文档


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值。

下载本文
显示全文
专题