[PHP] PHP 页面跳转到另一个页面的多种方法方法总结

[复制链接]
admin 发表于 2021-5-27 23:46:37 | 显示全部楼层 |阅读模式

登录后,购买下载资源更方便!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一、用HTTP头信息
; q% s& H- y1 T8 S4 r" }9 @8 Z& T  ^也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。 ; K6 z% m: T4 q7 N+ q& R8 m
用HTTP头信息重定向到另外一个页面的方法如下:; @1 l0 G, C6 k+ e7 e" o

9 k2 b5 ^  _9 W/ u复制代码 代码如下:8 x& n, f, Q2 D5 O2 `0 z
<?
$ m+ l% L( ^, q' }. c" u% `if (isset($url)) ( C* h# t( `5 R, q: r
{ 9 k9 \* r9 o* e, V
Header("HTTP/1.1 303 See Other");
) b# ^  G+ c7 [% ZHeader("Location: $url");
$ G: t, [' I( x& w: a$ _exit; //from www.w3sky.com
/ T- R" U: t! f}
. M) ^. J, e2 ?% q?> 1 \8 O0 w/ P& J7 ~
注意一下,"Localtion:"后面有一个空格。
; G9 U# c1 i1 `8 N. X  `二、用HTML标记
; ], a  r: v1 Y4 d7 T2 ]1 S+ q/ b用HTML标记,就是用META的REFRESH标记,举例如下:
" @2 Y8 H3 M+ q7 w* Q复制代码 代码如下:# _8 M' j3 ?/ b4 g/ W( L
<? if (!isset($url)) exit;?>   _, j6 ^& f. j: K- I9 x
<HTML> 8 P, W0 W4 x& B) F" @
<HEAD> 6 i. P9 l% j+ J$ B( i: S
<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> 7 D/ t5 _3 e7 I( T
</HEAD>
( Q8 G6 V1 c6 H<BODY>
$ N( ~, \; {2 X/ C- U" F6 A' W2 Z</BODY>
1 ^, _  o) u3 f! u* I" a% p& E4 N! {</HTML> 2 Z- g$ U* ?5 k' M$ X' [* G

& z: c; ~7 r- i# W( {* Q& }. L三、用脚本来实现 # B3 u5 a. S( E/ K, k
举例如下:7 T' c. d. {4 R% G+ |, C
复制代码 代码如下:
, s8 Y) d4 ~4 D  R0 l: A' Q, ~<?
8 ~  C8 a$ O, |) z6 y$url="http://www.jb51.net"; & D, t4 W  U9 u( P
echo "<!--<scrīpt LANGUAGE="Javascrīpt">"; 1 [" N0 Y5 S, u) Q# Q, N
echo "location.href='$url'";
% K& H. f% g" |echo "</scrīpt>-->";
; G  `2 w8 b8 H2 [# c% g0 }?>
8 {( n% Z1 i1 h9 z0 x& k) X下面是补充0 w4 v, D4 V+ x
2 B: _0 A& B5 \% u+ x' R
第四种: ) {9 u, J4 n) a9 D8 M& m
echo "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > "; , I+ ]- k) }$ l" F: ~# l& q3 K
其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. * G5 M7 z/ _" h1 Y: b; r
* y4 c+ w+ y. |  |2 D# e
第五种:利用script实现4 f4 r" r/ f* M
<script>url="submit.php";window.location.href=url;</script> + E) ?1 u+ F7 J* P" a
! U# L% s- ]8 ~/ S# T
第六种:
. `# Z8 K0 i1 N7 j6 V利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. - n0 k$ h# d; z. S4 A
<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script> / C" ?- Y) g/ h6 S: w, Q: b
其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
) z5 F3 C  I% F2 b5 i% j8 yheader("Location: Url");
+ x) @# q0 n& S5 `5 }; d  R- d3 X1 |+ ]/ Q6 c5 c8 k6 p# G( L
速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
: w2 B8 o4 G" T- P  M) d  d7 N
- r2 r( t! ]( C, L# v$ W7 M
评论0

手机版|小黑屋|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网-持续研发、集成、交付、运营方案资源库

GMT+8, 2026-11-14 07:12 , Processed in 0.047844 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.