开发者社区> 余二五> 正文

php实现post跳转

简介:
+关注继续查看

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

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

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

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

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


index.php(发起跳转页面)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?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(跳转目标页面)

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


无图无真相,各位看官都来瞧瞧。

get访问:

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

wKiom1l7E3-i6u1eAAAilW1SNNs623.png



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


wKioL1l7E72hONmdAAAl1DVIKkM693.png










本文转自 hgditren 51CTO博客,原文链接:http://blog.51cto.com/phpme/1951810,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
16653 0
PHPCMS其他栏目跳转不到首页解决方法
发现问题 不知道你们是否遇到过这样的问题,比如下面这个图。 1.jpg 点击成人教育这个栏目,再点击首页时候还是在这个页面(前提是已经生成静态页了)。
895 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
23580 0
php页面跳转
php中如何跳转,我们看下面的代码 form3.php Name ...
786 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
14279 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
19808 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
20699 0
+关注
20377
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载