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

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

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

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

×
一、用HTTP头信息
& U, o9 @+ k/ ]$ w- y, O也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。 ; k; l1 V- o2 j* n
用HTTP头信息重定向到另外一个页面的方法如下:7 ~$ H& U7 f# f4 n+ o' Y
8 L8 h: i7 F& I
复制代码 代码如下:
* s7 o4 R: ]" W, s! L% e<?
2 x* m! f0 e  n1 {9 V2 |if (isset($url)) $ c. r- I% G/ s4 Z! Q* f: N
{ . ~; B8 ^) j9 l3 V' v8 i7 ^
Header("HTTP/1.1 303 See Other"); : x! q( j) \  m5 f
Header("Location: $url");
( O  q' X$ M! b. ?exit; //from www.w3sky.com
* W: M9 D1 D4 C' _; D4 z% S& C}
9 i4 Z: ]+ z# O% A. y" g/ b7 V?>
5 q* B4 l! B$ o5 [9 d/ D( j9 K注意一下,"Localtion:"后面有一个空格。 * N" L6 S* |9 @7 m
二、用HTML标记 ( D$ c6 Y5 K$ _2 k4 l
用HTML标记,就是用META的REFRESH标记,举例如下:
; T1 Z% |4 C8 h* e复制代码 代码如下:( {! |7 j) Y' q, y, ^0 }+ t7 M
<? if (!isset($url)) exit;?> ; g& S$ w) J& ]' l
<HTML> & p+ n" u8 B) S6 Q0 W' @! y
<HEAD>
, P  H: p* `* {+ h9 Y3 z, w1 H<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
" R5 w" E0 L# L' O1 |& [7 h1 I</HEAD> 8 E4 A4 q9 w. `( l* y3 I
<BODY> " ~0 x) b! j/ A# E  u$ P: Z
</BODY>
: q5 D& n: Q* G& n+ b</HTML> + s0 R- D6 U; S4 ^
6 \- v9 m' f, \; {& a! y
三、用脚本来实现
$ c" d. ?7 ~+ p1 u& c8 N举例如下:% R6 F. i& B* S3 ]6 w
复制代码 代码如下:
$ n9 H% h8 i  _7 ]" t  e<? 6 F1 k5 Z( G8 S) y4 o5 x
$url="http://www.jb51.net";
$ V2 b" n8 \( q1 F0 A# Gecho "<!--<scrīpt LANGUAGE="Javascrīpt">"; - V- m! F, _# q( d. V* {7 \
echo "location.href='$url'";
  `% s% G3 A6 g! n. y9 e$ Uecho "</scrīpt>-->";
1 F" Z; W$ ?' T/ i: H?>
. P2 v1 U- \3 r# v( z下面是补充
8 M8 B/ m" f; N) d! D) a3 K2 S  X8 p4 ?% R, A1 p8 e! b
第四种:
7 g& o& a8 z) _% s+ N& n( [echo "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > "; 0 Y& D" o* q& I6 X
其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. 3 ]/ x# t% w$ F1 a3 h
' @! Z: M( l/ k: B
第五种:利用script实现( i4 d/ ]+ H' X
<script>url="submit.php";window.location.href=url;</script> % E8 [: y7 Z* x7 A1 E
/ T/ G8 W5 X; z; P
第六种:
9 b* k+ E* l2 E: ~8 O; s利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. & h8 V' e$ E' E1 P
<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
/ I- R* p* A/ U; T8 z+ s2 l; J其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
* Q: ~3 p; t& O. wheader("Location: Url");
: L3 D" @* m) X5 o& D' o: s+ u# l
9 U5 e+ q0 z3 b5 @& p1 }8 O速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息.. 6 ]3 Z2 [+ f2 u' w# \4 M4 s, G: g( u' g

3 N; H* f, e5 ?
评论0

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

GMT+8, 2026-10-11 10:28 , Processed in 0.039484 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.