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

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

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

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

×
一、用HTTP头信息
! |! [/ H- F8 y, ^+ i4 {4 I也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。 - ]* V8 p$ P* F( B" P4 _
用HTTP头信息重定向到另外一个页面的方法如下:9 i3 z6 H. ~" G5 v' x; A( s

( T  n: ]/ C# G$ W$ a8 K复制代码 代码如下:
8 i) p! W4 h0 L! M( S" d2 o3 h<? % L1 K- Z# a: J0 ?2 ?
if (isset($url)) , y8 R8 L4 u% ]! c8 _& N
{ + H9 m/ W8 Y1 P5 h& d- |+ M
Header("HTTP/1.1 303 See Other"); * |) e) c& u& w- u+ L, A) |
Header("Location: $url");
( k4 B1 c4 D3 o' s$ _exit; //from www.w3sky.com ( V+ g* j" Z/ @3 C5 \
} " L0 @' b, E$ z
?> 6 e. t0 R, k, J) Z, P
注意一下,"Localtion:"后面有一个空格。
' r, `# U# e+ S7 M. U# R- F6 [) F二、用HTML标记 & p9 ~- B5 R& n+ ?! ^
用HTML标记,就是用META的REFRESH标记,举例如下:
% |2 _. n9 h7 J! C复制代码 代码如下:) x  j: [# T7 q2 q
<? if (!isset($url)) exit;?>
3 Z. |$ O: J1 S! H<HTML>
  w$ e/ p% `4 X/ O  N<HEAD> ; U. C" k7 M# t  F4 y( h# A
<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> , q# D6 l1 v( Y" {
</HEAD>
0 S5 @3 [( N: y# w$ S8 `( P<BODY> + t8 D  _! f( X+ z4 S$ `$ H/ R
</BODY>
8 r' |* f/ _; ]% N2 Q  q</HTML> 0 O4 N+ [# q& @7 ^2 Z9 t9 a+ H8 Y0 @0 a

( t0 ~% T: X0 H, y3 l三、用脚本来实现 8 r% C! q+ @0 B
举例如下:
; |- h$ Y- j/ ]; e1 [; D( Z% l复制代码 代码如下:
! @# N) H; ^. m! W3 |( s<?
# g8 ?# y, c+ P$url="http://www.jb51.net";
/ p, X* ?  p# Q" @9 M6 v/ yecho "<!--<scrīpt LANGUAGE="Javascrīpt">"; 8 v  y: W7 J! r7 S) t9 B
echo "location.href='$url'"; & W  w, D5 R2 ]+ n
echo "</scrīpt>-->"; * u5 l" {! u- s" ?: n! O' I  w
?>
+ b. r# l: F0 j, b/ [' |下面是补充
6 u! Y3 o6 H, {+ o+ h4 l- A& i# v' `2 m, \  u7 \0 o4 y
第四种:
9 n* v: X6 A% V* hecho "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > ";
" J) |: M( @$ B+ q/ V, H% i其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. + g. h- z/ [* p: C

/ R5 n5 X# M! o6 D$ ~* `第五种:利用script实现
9 G* h  [2 V3 ~- O<script>url="submit.php";window.location.href=url;</script> & K: }- U+ P. n% Q: _

9 q0 |# }/ y3 {+ S! U! ^第六种:" E4 K) t  E! L0 C7 V. l% ^
利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
2 }3 k0 X# g  }) H( n<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
% y. }' ~* {: I! g2 L  V$ q6 |$ b其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
1 e9 N! K9 i4 W" T& Dheader("Location: Url"); ( D6 O  r. L) V0 W8 N% W6 ~: E

. t' E9 k( Q* e. P$ n速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
+ ?+ Z$ i2 J; l# ?- ]2 R  p; h8 @8 u1 M& v: b4 P! A
评论0

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

GMT+8, 2026-5-18 00:55 , Processed in 0.076768 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.