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

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

作者: admin    时间: 2015-11-24 01:31
标题: PHP 页面跳转到另一个页面的多种方法方法总结
  1. 一、用HTTP头信息 - X8 A* `( K1 T0 w6 h7 X+ T
  2. 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
    ) ]5 E; Y& |) i: k: E/ q4 D
  3. 用HTTP头信息重定向到另外一个页面的方法如下:5 b9 l! U$ U6 i( o* r" ^/ w) w" l
  4. % ^# `2 y5 H1 s6 X* H; C7 c/ n
  5. 复制代码 代码如下:* C; B4 d3 Q: U  A5 p; y1 Q
  6. ( L8 ?4 c1 M9 Y. @4 D5 q( m
  7. : C/ L: Y) Y( d; r4 j% l3 N3 ]
  8. <? 6 ?6 S9 C, [' g0 \- X7 W
  9. if (isset($url))
      Q0 T6 a$ Z9 ?& `% l3 u; B
  10. { / I* _9 Q! ]% O* V
  11. Header("HTTP/1.1 303 See Other");
    1 v3 ^2 w, G2 D2 [  R5 A7 ?9 W
  12. Header("Location: $url"); 1 K% G' v% X2 `9 C) Q
  13. exit; //from www.w3sky.com ! O7 m+ `: o& n; a6 ^
  14. } # l+ ^$ Q: K- B0 n8 J/ E1 ]9 h
  15. ?>
      w2 n! E1 [- o8 d

  16. - z1 _4 U% e3 r0 \- R) ~3 u! B$ U5 ]

  17. 5 B# G( ]  x  [; [6 Z  X
  18. 注意一下,"Localtion:"后面有一个空格。 % V3 Q1 b  N; C7 H3 U9 G
  19. 二、用HTML标记 7 V; K, P' R: x! p( g
  20. 用HTML标记,就是用META的REFRESH标记,举例如下:, \/ q. o! E0 d) {2 D0 _' m0 u( Q( @
  21. $ U  e5 e: k0 N% Q  |
  22. 复制代码 代码如下:2 \& W7 [- ~4 n2 w8 H

  23. ; r/ ?# F6 f  K2 C/ Y

  24. " j; U2 J- |+ ~" w% I" Q4 d
  25. <? if (!isset($url)) exit;?> $ u8 B; {1 b& e; o$ g4 A
  26. <HTML> $ }5 Z0 c6 k% _
  27. <HEAD> ( O3 M, ^8 f8 L; M$ @  t/ y  S: M
  28. <META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> * D' Q2 P9 s% F4 I, X+ b  U) l
  29. </HEAD>
    " W8 [/ }. W7 D6 Z" Z& M
  30. <BODY> " m* [* o0 ^& ?9 @8 E
  31. </BODY>   i- `* h6 s' u. ?2 O. @
  32. </HTML>
    & x6 ?" Z$ C( T& C5 e( _$ w9 P
  33. : i$ y& s% D' O  X; C3 m
  34. & _  Y% x4 w/ t' J% R1 P4 k
  35. 三、用脚本来实现 / m7 E9 i8 V7 Q1 s& L; `+ q- y
  36. 举例如下:6 f6 c2 l0 m$ R" S/ {
  37. : _! X8 W9 v( N* y% `
  38. 复制代码 代码如下:2 V% k, y0 J* L3 @5 I! e9 [

  39. ' O, u* l4 [' C4 S# A& q2 P

  40. . f$ Y# T2 Q; O
  41. <?
    ! O" @4 D- _+ {. P
  42. $url="http://www.jb51.net"; 0 K! o2 f: S% Q( `6 c
  43. echo "<!--<scrīpt LANGUAGE="Javascrīpt">";
    & y8 E+ j8 }7 O& b
  44. echo "location.href='$url'"; ( ~+ m' }" G. g1 ?  y
  45. echo "</scrīpt>-->"; 1 i, y$ Q9 U- z: N5 Q7 I2 A
  46. ?>
    3 d0 {( w! `* h
  47. ' O" f* O1 B$ m4 \

  48. 7 v9 a2 W* C( p2 Q
  49. 下面是补充7 d: O# V8 Y+ n6 B( a: ~( @& M
  50. 第四种:
    0 Y6 \6 ?7 v) _7 B: E6 i
  51. echo "< meta http-equiv=\"Refresh\" content=\"秒数; url=跳转的文件或地址\" > "; 3 Q6 J2 _6 K  L! t' X
  52. 其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面. ) v4 A- c+ N6 x$ A, \* F+ Z8 g. n" m
  53. ; X' V% E$ b2 A
  54. 第五种:利用script实现
    : [$ C# m" r. ?
  55. <script>url="submit.php";window.location.href=url;</script>
    , X$ O- w% I1 ?9 x4 |( m3 g
  56. 5 e0 d. x2 x, w/ }+ B% _
  57. 第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口. # \: S! U5 t" e# b0 x  q/ {7 H4 ?
  58. <script>url="submit.php";window.open(\'url,\'\',\'_self\');</script>
    2 l* z9 U7 p& i# ^9 z* Q# S
  59. 其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息 ' w5 M6 R2 }$ t" P* x
  60. header("Location: Url"); % i5 D$ B3 s- D" W. R7 I
  61. 2 ], _% \6 P+ z
  62. 速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
复制代码
" H  [- T+ m% t, i4 d
, \* }2 w9 n6 e0 Z





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