找回密码
 立即注册

微信登录

只需一步,快速开始

QQ登录

只需一步,快速开始

查看: 361|回复: 0

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

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

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

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

×
一、用HTTP头信息 ) S6 r3 R3 {  @% e% O! p0 t! d
也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
& b" Q: [  B7 i  X1 B用HTTP头信息重定向到另外一个页面的方法如下:# M! X0 J( O5 r4 W8 x

! p0 w, H  M+ H8 o" p. L" B复制代码 代码如下:  V% G& }2 _: l" D+ E
<?
# r7 Q. v3 T4 ^. z- }+ s" P4 p7 Tif (isset($url)) " Z- }# J! a; j2 l6 Z0 i
{
+ h1 X1 D4 q% I, qHeader("HTTP/1.1 303 See Other"); # _* l6 h, e5 n9 t, g
Header("Location: $url"); $ W' A, |0 W/ {+ e# p$ p
exit; //from www.w3sky.com + P9 f1 z$ o: D
}
) P5 e8 U& D$ g8 L6 H?> ( Q2 M; ~! w9 ]# C( h4 C; S
注意一下,"Localtion:"后面有一个空格。 + Z' K" v4 B0 s, U
二、用HTML标记 3 m% v$ E) K; K! F
用HTML标记,就是用META的REFRESH标记,举例如下:& c: d  o, C7 V3 e  x5 F+ J
复制代码 代码如下:
6 ~! z9 J; j) Z: I<? if (!isset($url)) exit;?> 9 `- b. G" Y0 b& K5 `6 v7 c  N
<HTML> + e4 ~/ E/ u1 k( l- |( F& J
<HEAD>
" D( w+ N3 T* P<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
1 e0 @( ?& Y& j</HEAD> ; a, t& h6 S: ~1 a6 n0 T4 b# i
<BODY>
- i3 h" y5 B. X5 V) Q$ l</BODY>
, L# S1 h! R7 w/ A5 }* g</HTML>
4 R; S) h( O2 N  |
1 I7 H: |% Q6 U8 m7 u* s三、用脚本来实现
/ |3 I9 k4 x3 E( b举例如下:0 q( S9 y$ z( _$ P5 t% H. r) H
复制代码 代码如下:
) r: j  ?9 o5 n# F- Z; T0 V. [. N<?
8 J2 i* i$ E6 M, x; b$url="http://www.jb51.net"; 9 Y4 B, W& z/ \
echo "<!--<scrīpt LANGUAGE="Javascrīpt">";
+ [1 U) E( M9 V  M, K0 fecho "location.href='$url'";
2 Z. i- O3 w1 Z0 j0 {' h+ Pecho "</scrīpt>-->";
, S* S, ^* ]) N" A5 G?>1 @& R) {. ?% h* Q
下面是补充0 s  i+ A) b- i6 _/ l" \1 w! L- t4 v

0 n' W- E" K3 @9 M, G! A第四种: 0 f# N8 V; p- n" T$ P8 Y1 ~
echo "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > ";
0 s: X9 l% g$ a其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. 4 S% O" [% E: A5 x
- d, F2 |2 N6 l, ^) [
第五种:利用script实现
( g" O% C  K8 l* R( }( A, T6 B  j<script>url="submit.php";window.location.href=url;</script> , r2 a& D6 O1 U9 L' H9 }
; ?; s, }  V" l2 A( e' Q2 o/ U6 `
第六种:9 d3 ?0 n0 ?1 i
利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
* o. m" E0 V' O1 d<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
/ P( O+ I$ J6 j9 S! ?0 ]其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
' J8 V; W6 T& ^2 Pheader("Location: Url"); 5 ]! k) q# i0 Y( r' t" u, r
1 \/ p5 |" @& T! V9 N! O% q; e+ c
速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息.. ' h2 x* D$ e# N8 l. T4 b- i, m
4 }" [: h" m7 S0 u/ z

QQ|手机版|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网

GMT+8, 2024-4-26 13:23 , Processed in 0.043463 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表