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

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

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

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

×
  1. 一、用HTTP头信息 6 b( R5 r- W: |! G5 f+ t8 _
  2. 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
    / c8 N' A0 q- N. p( t) {
  3. 用HTTP头信息重定向到另外一个页面的方法如下:
    . Y9 a& P' G% ~: l

  4. 8 U5 Q4 o* b% N- ]
  5. 复制代码 代码如下:
    9 Q; I3 i/ \4 D- Z6 U7 ~5 X

  6.   s, v' I% `) L/ P
  7. : W( F2 Q1 ^8 w  o
  8. <? 5 i6 T8 G' Z  C: e8 p- b2 v8 z
  9. if (isset($url)) 2 T5 y) w) {) [; `! u( U7 }, O
  10. {
    8 b8 f9 M2 `$ _6 D
  11. Header("HTTP/1.1 303 See Other");
    % X- g* @; E+ D
  12. Header("Location: $url"); 0 o, E; l( W# N
  13. exit; //from www.w3sky.com . c! A- `2 a" b9 i
  14. } - Z6 ?4 a& H! W5 S) R2 O6 ?) n4 T
  15. ?>
    7 g& @* u0 ?) E7 R# u

  16. 3 p7 I! `# D, ^9 O/ @! v/ P+ y% Y
  17. 1 ]# s3 Z' \1 ^8 u' r7 l
  18. 注意一下,"Localtion:"后面有一个空格。 $ j- L$ y; R  A! U$ m, ?0 l3 c7 G
  19. 二、用HTML标记
    - V+ g& y- F  g  p" z6 k3 a
  20. 用HTML标记,就是用META的REFRESH标记,举例如下:/ j9 }; F7 s" }6 R( h' M- ]

  21. ) C* P6 v# H1 i3 w  E" R8 ^
  22. 复制代码 代码如下:
    ' z2 [1 h( k9 [! a1 z# P6 [
  23. 4 x) N2 A& a; t) G5 L. R& r

  24. 2 S" T) q  G/ x! V
  25. <? if (!isset($url)) exit;?> ( k( @- R# U3 k9 x% D
  26. <HTML> 9 v' p9 Q9 [" Y2 a' v) ?9 f
  27. <HEAD> % w. i2 J4 P2 N" k5 N
  28. <META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>>
    # d4 x1 ]+ k5 ]
  29. </HEAD>
    : I; e8 F# @6 `' n* Q& j% j
  30. <BODY>
    : E' C& Q, N/ i' F
  31. </BODY>
    % t8 h+ c- q1 Q1 r
  32. </HTML>
    / b0 ^* J7 M$ ~
  33. " ]! |( R* ^  u1 M
  34. 7 Y1 O, @2 V3 [3 J2 |! j
  35. 三、用脚本来实现
    0 l$ W% A# y' Y) F; h
  36. 举例如下:) }; K& J% ?- y5 a# O
  37. 4 P. h6 V0 x: H
  38. 复制代码 代码如下:
    5 |1 i) y  b$ Y- d' b. A4 K
  39. 8 v2 V5 h4 G, m) E6 j% j
  40. 7 C) k$ d5 A: l: r; g
  41. <?
    / x; T7 L( s) l7 @9 l$ c# H
  42. $url="http://www.jb51.net";
    ( \4 q# _- E- d+ k5 y" q* a* u% N
  43. echo "<!--<scrīpt LANGUAGE="Javascrīpt">";
    1 t; n) G7 b/ [: _+ ^+ R) K
  44. echo "location.href='$url'";
    # |! A$ ]# r7 B" S% b6 ~
  45. echo "</scrīpt>-->"; ! g: q( C9 ~" T' l' D% J% h
  46. ?>
    3 Y# U$ y6 _" W& m* [8 O! Y
  47. * i0 Z, F7 s% ?! {7 I2 E
  48. # n) _/ Y+ p- M' b$ K- l
  49. 下面是补充
    % G  t" V# G" R7 ?2 M4 a
  50. 第四种:
    * B: w$ z. J1 v
  51. echo "< meta http-equiv=\"Refresh\" content=\"秒数; url=跳转的文件或地址\" > "; % k. ?! |( S6 R- r8 O8 ]- c6 K
  52. 其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面.
    / t8 R9 e, v' Q8 K0 D' N* L0 c! u
  53. 0 s1 i; x' H1 b9 q4 b1 {
  54. 第五种:利用script实现
    . [8 q; v0 O. N* G# j
  55. <script>url="submit.php";window.location.href=url;</script>
    ! ^' G! K6 b8 Z. c
  56. * y4 B" |* B1 _7 t6 {( e' o' o
  57. 第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
    ! i: X3 l, _; S' f/ Y" X
  58. <script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
    2 g3 M4 L! ]! }0 l& M, d
  59. 其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
    0 U' k) C6 A( c3 p0 K- G
  60. header("Location: Url");
    + a/ E5 s: u' g" U" L

  61. 6 g! i* ]9 [% x: ^; X/ }1 y1 I
  62. 速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
复制代码
: u4 ?$ e" k# w( n8 R) i( J

$ z/ L2 ^- \7 H  Z6 s1 o. s0 Q, K
评论0

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

GMT+8, 2025-7-12 08:24 , Processed in 0.050726 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.