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

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

作者: admin    时间: 2015-11-24 01:31
标题: PHP 页面跳转到另一个页面的多种方法方法总结
  1. 一、用HTTP头信息 0 G( p# ~* p0 F) Q
  2. 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等。
    ' c# x2 s0 [* Q8 s- K  k
  3. 用HTTP头信息重定向到另外一个页面的方法如下:; z" I) S7 F) C$ b& o; N
  4. 7 I5 p! L) k; S4 w+ m, e- r3 R: F
  5. 复制代码 代码如下:
    . h/ @* V. F" W( M1 q. l0 P# H

  6. 1 _' ]7 T. B% N3 S. Z  L

  7. # T# Z0 m3 ^7 j7 ~2 v0 ~
  8. <? 9 ^8 m4 j: S" L' t0 g; R
  9. if (isset($url)) ( k; \( s3 l4 F7 w# D2 X, z
  10. {
    / v0 ]7 Z; j* l
  11. Header("HTTP/1.1 303 See Other");
    ! L. e: r1 G- a5 ]( Y( T$ l
  12. Header("Location: $url"); 1 ?# E+ Q4 ~% r' N8 H+ v, t  U
  13. exit; //from www.w3sky.com
    + E- o- D, V0 u6 y- u
  14. }
    " y+ ?( K: S( n" v, D- ~: B& O
  15. ?>
    9 F3 f& S! I/ I& U' a1 M9 `; k

  16. 1 l0 |/ S, _$ |7 o% z- R# V
  17. 3 x. ?1 X6 K6 n8 |9 C6 r  B
  18. 注意一下,"Localtion:"后面有一个空格。
    + M( w$ X$ d8 B$ e, P! E
  19. 二、用HTML标记
    ! R; @( K# K+ a8 W$ V( l2 e
  20. 用HTML标记,就是用META的REFRESH标记,举例如下:
    5 D# e* j% H: d/ M; N
  21. 8 B9 \7 s0 y& v  n+ [1 c. A; n# E
  22. 复制代码 代码如下:- B4 e" a" W& F! B

  23. 2 ]& q$ m1 _2 c/ F0 ^

  24. ' `0 e4 p$ a) _) X  M+ Z/ o( w
  25. <? if (!isset($url)) exit;?>
    7 ~: g# \- g6 d' B( Q: M7 n
  26. <HTML> , d/ G' u  F7 o+ B( A! B- Q6 c( [' @
  27. <HEAD> ) @9 y) q  _- v' i/ G
  28. <META HTTP-EQUIV="REFRESH" CONTENT="5; URL=<? echo $url;?>> & H- @# s4 o& I2 P# C4 g
  29. </HEAD>
    7 q& t+ p* a1 ^$ r$ y$ t
  30. <BODY> 5 t6 V: _' w9 `  \- R
  31. </BODY>
    ) e  m; C' R$ k& d  Q1 o
  32. </HTML>
    * ]7 d7 i, ?- S+ N4 B

  33. % K$ E0 I! n4 W8 w$ _

  34. ; D1 I' c) R! q7 b/ j  Q
  35. 三、用脚本来实现 4 c* B1 ?+ `5 o) I: V
  36. 举例如下:: ]! D+ v/ I" B

  37. 0 R: `% ^8 n1 t% M) f0 ?) A% M
  38. 复制代码 代码如下:
    / c; _+ K& N2 b; |$ y! p# t
  39. / t0 S; n1 F; d( h) I, J  N& h  W

  40. 4 B2 t  b/ x5 Y
  41. <? + ]6 r1 Z: w7 K5 v6 ~* C/ b, M
  42. $url="http://www.jb51.net"; % @4 }2 s# g+ e9 X) s# u  J
  43. echo "<!--<scrīpt LANGUAGE="Javascrīpt">"; ) {% O& ^" I: j& D
  44. echo "location.href='$url'"; ! \0 {* r4 k. S! j6 M. |9 N
  45. echo "</scrīpt>-->"; " {% e9 O, x5 j3 [4 k4 c; w
  46. ?>4 ~5 c6 t6 b1 k' P9 ~2 g% A+ B$ h
  47. - u7 e4 f2 |" ?' ]4 o+ Y, k

  48. # e# G- b- D6 [
  49. 下面是补充
    + g1 y; |$ r% h0 \6 I  M
  50. 第四种: - \4 z- Z4 n5 M( C0 W1 g  ^9 \: R
  51. echo "< meta http-equiv=\"Refresh\" content=\"秒数; url=跳转的文件或地址\" > ";
    $ c1 ?$ W( u* ?6 K7 d
  52. 其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面.
    9 \( {1 X0 O( ?

  53. . _9 Z* l! p0 G4 \# V" q* B' ~* }
  54. 第五种:利用script实现
    2 g* Z. J$ e. |, A% e- @
  55. <script>url="submit.php";window.location.href=url;</script> " ]% @' c4 E, s  r" v3 g

  56. : Q2 _3 |5 [6 A& e3 {
  57. 第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
    ) p- e) k8 p# `! N
  58. <script>url="submit.php";window.open(\'url,\'\',\'_self\');</script> 0 @* @! e8 z- X- y
  59. 其中 更改\'_self\' 就可以实现跳转限制原窗口还是父窗口,子窗口或者新窗口.第七种:利用php自带函数发送头部信息
    # E, X! z% @" @
  60. header("Location: Url");   |! X" s# b$ F- [/ J

  61. , Q4 c! _/ i. s" F! S5 s
  62. 速度最快,功能强大...但是有个问题必须指出:如果在使用这个函数前已经有html输出,哪怕是一个空格.那么在页顶会显示错误信息..
复制代码
8 B1 S1 \$ t2 d8 ?
: S5 b& H& a  s/ g





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