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

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

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

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

×
一、用HTTP头信息 7 {/ g- `- i% w/ c. O
也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
6 u* a0 B% K& w1 V" ?* L用HTTP头信息重定向到另外一个页面的方法如下:. F6 O7 y  c. M* Y2 d3 G& _
7 m3 i# G  h  p! e
复制代码 代码如下:! L; d8 R  \8 J- h3 T$ ^
<? * v. Q: K: V2 Y5 e
if (isset($url)) " H4 B  p' X! N9 E9 I/ q. M) p$ X
{
* z, {. _  ]  O# }  NHeader("HTTP/1.1 303 See Other");
, y/ n4 h  b5 z/ l; X+ YHeader("Location: $url");
5 J( j/ O, X% ?- I7 Pexit; //from www.w3sky.com
' l, n: e/ {0 A: F4 \3 A} / j  C9 t; \/ C9 J: e5 z
?>
" C$ v6 V: v7 D9 s' B1 r4 Y8 l/ }  O0 z注意一下,"Localtion:"后面有一个空格。 . ]0 {: x- ^; F
二、用HTML标记
& q6 K4 H1 ~: b用HTML标记,就是用META的REFRESH标记,举例如下:! J- r- m7 Y6 p4 P' Q
复制代码 代码如下:
% T! a% G2 p, e/ I, V<? if (!isset($url)) exit;?> 1 Z$ R& r3 j; I+ C
<HTML>
2 m9 x4 g1 k1 U<HEAD> " K, p: h+ V% s) Y# c* A
<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
! H/ C4 T" F! g, {/ k& H, o8 L</HEAD>
9 B# p2 |  }& g& N; w<BODY>
- Z$ t0 L6 ^5 H+ R& a2 }</BODY>
& y& r1 U! ~* e</HTML>
0 C, B3 S1 s. E' _( ]8 c% d
; @/ Q3 Q! \3 I1 `5 Z, z三、用脚本来实现 # b4 C3 x  M7 R8 w
举例如下:
. O/ K& n* \9 N7 p7 Z1 H复制代码 代码如下:" s, |0 M/ u) D8 }, o8 n: i
<?
3 V. L: B: o- B6 \5 k+ m+ f$url="http://www.jb51.net";
3 P6 v4 O" ^6 k, V) p' |+ Eecho "<!--<scrīpt LANGUAGE="Javascrīpt">";
9 P* N7 \) B8 G7 mecho "location.href='$url'";
; v7 F, A5 ?( y4 C$ M* eecho "</scrīpt>-->"; 8 k$ D- C5 M/ P+ q
?>
$ N: u6 |$ M( v; ]! q% X下面是补充7 E5 f% C9 y# V8 F1 ?! j  G# K" x$ o

2 b; p/ X2 `# c5 b第四种:
, j0 c1 C9 r! f/ P# Secho "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > ";
- |# Y! Y8 B! k. q其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. : e2 z+ t( U3 G. U

$ j2 {3 b% l; @2 ~' F第五种:利用script实现7 C& j8 @) O4 f
<script>url="submit.php";window.location.href=url;</script> # h0 e0 Z& j) B, f6 P5 j  ]
5 b  w! o. A5 J0 |& _6 a
第六种:7 E+ A% r5 f" R( B4 U1 I/ e
利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. 7 p# N9 |9 W, O% S) Y
<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
: f; J# O8 j( @% i6 e* i其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
# h. J% r# K  b0 q5 S8 y6 }- pheader("Location: Url"); " I2 r& b  F& J4 r8 r/ z  p8 c
/ b( K0 M9 z; A8 T* ?* R2 ^9 g6 Q
速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
+ }  ?4 x+ J6 y: L2 k) m8 n- ^8 ~
/ A; j! G" r& ^" g6 z' a' y
评论0

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

GMT+8, 2025-9-3 12:59 , Processed in 0.046940 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.