科恒数字网-持续研发、集成、交付、运营方案资源库

标题: PHP 页面跳转到另一个页面的多种方法方法总结 [打印本页]

作者: admin    时间: 2015-11-24 01:31
标题: PHP 页面跳转到另一个页面的多种方法方法总结
  1. 一、用HTTP头信息
    8 N) e; H# h5 G: Z
  2. 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
    3 d  B& K0 E9 M$ j  E) u
  3. 用HTTP头信息重定向到另外一个页面的方法如下:0 V7 Z1 c' Y, l, F0 c8 O

  4. & S& c/ z+ m7 a9 o
  5. 复制代码 代码如下:
    * U8 F& R+ |2 i

  6. 9 \$ r1 X8 @, C$ Y$ P) o6 ~& N8 n3 {- a

  7. : }& x$ W3 i) q- x) n" h9 ~
  8. <?
    . P9 K4 }; V1 f" |
  9. if (isset($url)) , k4 ]& A! h% X; E* ^6 f$ _
  10. { - A) Z" @( Q$ C* U  J& _
  11. Header("HTTP/1.1 303 See Other"); , A: e6 q1 [* U+ e) `" Q# z" P
  12. Header("Location: $url");
    . h7 t/ L( {0 n
  13. exit; //from www.w3sky.com
    6 l2 z( R$ p; ^4 {- c& g4 _) R
  14. }
      v9 ~8 E$ s+ y9 `9 `! O+ \3 W1 Z
  15. ?> " M  j- K3 c; B4 z5 F- ^" _* t

  16. 0 F2 q5 U$ e/ s3 x+ |$ `

  17. ) N6 W. N! v* f5 R
  18. 注意一下,"Localtion:"后面有一个空格。
    1 J0 v: \- b# {8 N" R1 d
  19. 二、用HTML标记 / [" O: w: d4 j: P, s/ f
  20. 用HTML标记,就是用META的REFRESH标记,举例如下:
    ( a2 y7 ?# `8 P4 T& B8 {# w
  21. ( H) W/ G# y4 u. r% v  G
  22. 复制代码 代码如下:1 x! p6 f) r2 W
  23. " }" A( W: U6 _# T

  24. * d2 E2 M3 W3 T' s' O$ D
  25. <? if (!isset($url)) exit;?>
    " L: I( R! a+ D/ r- a2 U4 Q% S
  26. <HTML> % R3 h% c3 S: y; k
  27. <HEAD>
    . O) G5 ~( S" x$ x- T7 o
  28. <META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> + K& a" {1 {2 c' z+ f. L
  29. </HEAD>
    7 G& x6 ^+ Q3 ]
  30. <BODY>
    2 w. `  S: T, e: e. T% G. _4 Z
  31. </BODY>
    7 c! G3 j" `- [5 W/ I5 M' t
  32. </HTML> * U- ?. ?! E1 Q5 H) c9 ?

  33. % a% S: V; O! q4 t
  34. ! T3 ]$ c9 J; X& t8 o' j
  35. 三、用脚本来实现 & w& F+ p5 X: A$ C! `
  36. 举例如下:! m( _) r* {5 P. F7 g, x# j

  37. ( D9 Z* {3 U) ~3 p" M! B: O7 b, p
  38. 复制代码 代码如下:
    5 M  Z% B- k  s
  39. 6 o/ Y1 J+ g% ?* l3 s6 @& W" ^
  40. % u" H+ I  H& m. r, f6 Z' G
  41. <?
    9 E- b3 e  O0 r( m- V0 D
  42. $url="http://www.jb51.net";
    + g9 _. ~7 y( c# ]1 S2 r. D
  43. echo "<!--<scrīpt LANGUAGE="Javascrīpt">";
    6 C; Y' o2 C/ S% l
  44. echo "location.href='$url'";
    . }7 W: g) E7 r, V
  45. echo "</scrīpt>-->";
    3 n; J8 S7 S5 e% e7 P/ V; Y+ x
  46. ?>. U! v$ L2 Q& F) e
  47. $ y7 ~5 I+ m( w' \( J* o+ ?
  48. $ T3 f/ g/ R, _: |. z6 ^5 e
  49. 下面是补充
    2 d+ S8 W& z) r! r' _4 r
  50. 第四种: - O1 s  Q# o6 d4 N: b: M! o
  51. echo "< meta http-equiv=\"Refresh\" content=\"秒数; url=跳转的文件或地址\" > "; % h! i1 B$ B9 N7 E
  52. 其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. + n! X0 o* N& K

  53. 2 o( ~- G2 G3 h2 P, h. {
  54. 第五种:利用script实现 4 `3 j. v' p* \% B. `# I
  55. <script>url="submit.php";window.location.href=url;</script>
    ' M7 f& S5 y# b1 U" W6 T

  56. 0 }3 A2 I. B# J* T
  57. 第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
      P0 b& A; R# {, Q; ]" |$ w
  58. <script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
    5 V# x" O3 x+ M! d3 }! R% V
  59. 其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息 4 s1 v- }5 E8 Y0 b- \; R
  60. header("Location: Url");
    & H) X) W$ l2 ]  C$ Y

  61. 2 ]7 s  ]4 b1 g! W6 [" o
  62. 速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
复制代码

- o; {. K$ [6 M3 t6 J4 `
! v  K7 y* d* Z. F0 e) `




欢迎光临 科恒数字网-持续研发、集成、交付、运营方案资源库 (https://www.khcic.com/) Powered by Discuz! X3.5