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

[复制链接]
admin 发表于 2015-11-24 01:31:07 | 显示全部楼层 |阅读模式

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

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

×
  1. 一、用HTTP头信息
    & _/ K9 k" a& ]( H$ k: O
  2. 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
    6 a% `' _% u) e* _1 S4 G# l
  3. 用HTTP头信息重定向到另外一个页面的方法如下:! ]0 ]+ J4 I1 q0 j$ Y
  4. * w  h* Y( P/ W9 `
  5. 复制代码 代码如下:" O" ~+ z9 @! Z; {8 V
  6. / f9 o- |" W' z$ q
  7.   `6 I8 A/ p. A/ x  n7 g
  8. <? 1 m2 Q+ X+ e% Y0 h4 A& G- l
  9. if (isset($url)) . }1 a2 ~: o+ U
  10. { & n$ k. i8 R7 m% w5 i
  11. Header("HTTP/1.1 303 See Other"); ' L, F( \& Q+ m0 r1 e% N9 d+ y
  12. Header("Location: $url"); 9 ?! k3 ?$ S+ h) c1 ]
  13. exit; //from www.w3sky.com
    9 h) X4 m7 q5 T4 N+ r
  14. } 7 S& `7 s, _% A! S+ b* w
  15. ?>
    ; H5 _' y. m" [. q5 R. y

  16. * f1 a, C$ E2 @9 [9 l% _
  17. + q9 X3 ]) m, G5 U4 O
  18. 注意一下,"Localtion:"后面有一个空格。
    3 W- S0 U+ ^. Y
  19. 二、用HTML标记 / [( n' }8 B# |- q
  20. 用HTML标记,就是用META的REFRESH标记,举例如下:: n/ G2 F' s6 H7 U; m0 x" G3 D9 X
  21. . B- d% d8 U+ ]$ _* F* e
  22. 复制代码 代码如下:
    7 \8 p" m0 X& ~
  23. 6 \: Q+ p" ~) l" r

  24. ; T6 b" y1 X1 `# k
  25. <? if (!isset($url)) exit;?> " X6 h* y" s; r" u( ?$ \
  26. <HTML> & C1 d! J$ ^+ U
  27. <HEAD> 7 j, b' S# a  N5 H* T+ C
  28. <META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
    6 V4 g: m) e+ P" ]8 j) k
  29. </HEAD>
    & V8 Z7 A: X2 Y7 @! F5 T: S6 k& `; j
  30. <BODY>   W- u6 B- F7 P( O, ], b# \; ^1 _
  31. </BODY> + x% i3 o# o! q# S
  32. </HTML>
    - X2 }. X  Y0 T9 f) `3 Y
  33. - z2 v# W& f0 \) I$ k! V9 N& v
  34. + w) A' H4 @9 g. C
  35. 三、用脚本来实现
    - ~3 s- t! v& ]8 u$ G: z! W+ u2 `
  36. 举例如下:! q% K9 ~* \! C1 G- n
  37.   e, P  I/ N" L9 L5 V
  38. 复制代码 代码如下:
    1 }3 q& ~8 P3 D4 @5 I, F! u% `
  39. 0 O$ K1 v5 W5 L  E

  40. ; x& Q% I3 v2 }% o- \" j0 `+ O
  41. <? $ ]& Y& {4 }. D* s3 m
  42. $url="http://www.jb51.net";
    4 `+ b! f. V. H: J% n1 `
  43. echo "<!--<scrīpt LANGUAGE="Javascrīpt">"; 1 x3 H3 _! @5 P+ a  G1 a
  44. echo "location.href='$url'"; 9 Q0 o7 g6 x; M
  45. echo "</scrīpt>-->";
      z# Y; E5 y" S% t9 S" _
  46. ?>9 {% s( W; q, G% _5 z% J  ^- `

  47. / g" Y, S7 W+ ~( m' d. I
  48. - O3 ^  A* o3 E& b7 z& G
  49. 下面是补充
    + j" W$ r! o* |/ \+ W
  50. 第四种:
    ( q& r' e/ D- v* s% X
  51. echo "< meta http-equiv=\"Refresh\" content=\"秒数; url=跳转的文件或地址\" > "; 5 ~2 r, k6 S# ^2 _6 n! r% l8 u
  52. 其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. # P+ A: t2 ]# p: f; L/ u
  53. : e# e$ q3 [3 R6 [" t" [+ V
  54. 第五种:利用script实现 4 L' \2 E% k) H
  55. <script>url="submit.php";window.location.href=url;</script> 3 u8 |2 w& S& @& G* Q% M
  56. , W+ t3 t9 q3 j  i
  57. 第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. ; N3 M$ Z! C7 O' @
  58. <script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
    ; m2 m1 P- o2 H2 U
  59. 其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
      M5 O' Z  `# @9 W. {
  60. header("Location: Url");   l% ?% p7 w; F% z! ?; o# ]

  61. & K. D7 B0 E& ]1 Y: G
  62. 速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
复制代码
1 o' x" V1 x, e* {& l

$ {8 V! {& a# k& L; X
评论0

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

GMT+8, 2025-7-3 14:40 , Processed in 0.066049 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.