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

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

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

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

×
一、用HTTP头信息
' [4 [  p2 G" E也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
2 z# @) Q+ U7 s' w3 }用HTTP头信息重定向到另外一个页面的方法如下:
2 d+ J* o/ K3 ?; B; W; ?( |$ t+ G4 K4 k6 `# W
复制代码 代码如下:
3 r! V1 S3 V) U+ T& Z3 @; {3 s<?
" Q' D% s% k$ j; A* |: z) [( O7 F4 I3 y$ z* oif (isset($url)) 9 N/ `1 T' R& c7 G/ w
{   M  t' A' W( E0 Y, o
Header("HTTP/1.1 303 See Other"); 0 U3 z1 y1 D& _" A
Header("Location: $url"); 0 E! |4 D1 o2 M: Q1 p& c
exit; //from www.w3sky.com
  s$ p% g8 Z* [2 u0 u7 D} 4 Y6 |! R3 G0 P$ f
?> . e" V3 o2 Y2 t( C  u
注意一下,"Localtion:"后面有一个空格。 0 K5 y5 C0 {. M: A  @
二、用HTML标记 ) Q+ v8 h( e/ K9 j6 F; z
用HTML标记,就是用META的REFRESH标记,举例如下:
3 o# i7 W& _( y! a; o6 h复制代码 代码如下:
0 X5 j# k! W/ N/ R. }% Q, J9 y<? if (!isset($url)) exit;?> 9 H7 \5 Z( X$ E) Z/ ~
<HTML>
& h6 T" h) }8 s<HEAD> ( X9 }- s) k7 d5 u$ S% ~6 H
<META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
  p$ j& {/ F  V</HEAD>   _: Z* o, W1 u5 d
<BODY> 5 h! x" a( L$ w) @0 |4 K
</BODY>
7 ]" o9 Y0 ]3 b& l) m) j1 n</HTML> : l9 `# @3 b% x  f4 _: x

1 y  ]; v6 g; m三、用脚本来实现 5 x% E- t$ @5 W% e( X7 \
举例如下:
8 n& K1 k' p7 w% K6 q, G复制代码 代码如下:
7 s7 j1 C5 N$ ^. R$ D+ C8 J<? + z& b" r# h! U
$url="http://www.jb51.net";
5 r: a, _( q7 W5 q; W8 S% s5 Eecho "<!--<scrīpt LANGUAGE="Javascrīpt">";
9 u, ]* K' P6 ^% J; {# I4 Kecho "location.href='$url'";
& f7 \; |. G, e* D" G. {/ E+ P6 m2 zecho "</scrīpt>-->"; 1 @) l; l4 C, b+ s) i1 @
?>! B. W% i9 p! M& A% D' E
下面是补充" o/ O" A* N( u# A, X

2 L2 d! L/ H( r# j6 c第四种:
% o8 M5 i+ i& `, Zecho "< meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" > "; / H' K: U9 X  {. R' C7 I% ^# x; j& R# Q
其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面.
* Q1 L  o; L$ s7 p" }/ [+ b& g* x- }% D/ N' w4 G9 F  s
第五种:利用script实现
+ N6 O" c+ e2 H  h% C$ o<script>url="submit.php";window.location.href=url;</script> ! q( f: }/ u' o

) H7 c) E% y* u, T2 D, v; b第六种:+ C. c  ]2 c" D# F( A
利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
% f0 z+ y# M- r6 ]# T7 D' @! M8 x<script>url="submit.php";window.open(\'url,\'\',\'_self\');</script> * p: K4 H$ i( W- d! t
其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
; L: r# \7 k, _6 R: h$ Sheader("Location: Url"); $ w1 d' P' _2 W, [( h
, I6 N8 ]8 p$ R, }% b
速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
2 N% y2 u; h6 u9 P: ^# j0 Z% v! V3 U' P9 ~5 J: E- w
评论0

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

GMT+8, 2025-7-19 06:51 , Processed in 0.045503 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.