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

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

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

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

×
一、用HTTP头信息
1 s; S7 N" e3 Y也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。 ' y2 [* k& M2 t& L
用HTTP头信息重定向到另外一个页面的方法如下:
' R3 P: W! Y6 M0 X" Q, U, F2 i! b( M9 N* T5 w& o
复制代码 代码如下:3 _, L; g6 D+ [  _1 n: v
<? ( f( \( M! f4 e
if (isset($url))
* H3 x4 D. ^3 k; T+ P7 B% f5 l{ : f  s# o/ C5 u
Header("HTTP/1.1 303 See Other");
! T+ N: l( h5 L" F& ^( S! ?( dHeader("Location: $url"); ; P6 f  M8 H5 h: d1 Y( x
exit; //from www.w3sky.com
! t( x( X2 l2 F} 3 Z1 {8 \# ^0 P" s2 ^. L, E
?> / M* K+ Z5 ?2 q. e, a+ M: P3 w( R
注意一下,"Localtion:"后面有一个空格。 # Y5 [5 j0 @- M- e
二、用HTML标记
4 _! X3 R4 s! b: y: ^用HTML标记,就是用META的REFRESH标记,举例如下:1 k: A4 A- Y- k/ X
复制代码 代码如下:, b( E0 F2 }0 a3 R/ v5 l
<? if (!isset($url)) exit;?>
" r, I: I8 B3 u# `/ a8 m3 n1 p<HTML> # z4 |# |6 O" F! Q( M
<HEAD> 2 Y( b* z* u4 Z- H. C; I; p
<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> / O6 t) f! Z4 U) {1 R$ i) F
</HEAD> 4 R( n7 e0 U% m8 o4 q* h* L
<BODY> 7 I' q8 S  ]; Z& N+ M$ r: G
</BODY>
0 T! S: t# U; E! n' P5 m8 i</HTML>
6 b* Z% \5 J" W2 b- J5 b; A2 F* l, D. J1 t. @4 F
三、用脚本来实现
( S9 `) ?7 J2 E! E3 o0 H$ G举例如下:8 v/ {, Y( k7 \8 B. O
复制代码 代码如下:6 m5 h& m" @6 A2 _# E7 \' V) M
<? . M% l- p5 p& w8 T5 j( ~/ {+ c/ v$ [
$url="http://www.jb51.net"; ! }# }" i# \8 a6 B6 V
echo "<!--<scrīpt LANGUAGE="Javascrīpt">"; . ]! @, \  b1 N' F/ g& R$ H% Z& h
echo "location.href='$url'";
' U, i) W7 e; x% x- Zecho "</scrīpt>-->";
4 B% [. w. s5 \& |4 W/ z- V?>; Y' Y5 W  o5 P' A- w
下面是补充
. O+ W2 {5 _+ o- M
/ l7 Q2 f; U6 e第四种:
& E, N! d% Y; j- D" recho "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > "; 1 h4 [, j  K) \: ?( e: p
其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面.
: {' s7 M& B4 ^1 j! W) f! ~+ y4 Q) J$ C7 L
第五种:利用script实现
: G0 O/ Y* c6 o: \: h<script>url="submit.php";window.location.href=url;</script>
' c: v& \& ]1 E9 q0 L% G1 Q2 W, \& T
第六种:
6 R3 w# N+ [* _) I* @利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. " @" H1 |5 _8 y, F: J2 j8 b
<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script> 4 h( F& |9 i' b8 p7 \) C! L/ L! p
其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息 5 U7 d, h9 {" Z' \, ?& o, M
header("Location: Url");
* R* ]# X1 |0 V$ {) w* r% a7 P& j' d4 h& [
速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息.. , |) N# h# v! X
8 e& D0 X. Z; {8 D4 K+ m  a0 a
评论0

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

GMT+8, 2025-12-13 13:04 , Processed in 0.074297 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.