php页面自动跳转的几种实现方法:
①meta标签
方法一:使用meta标签
meta标签是html不可或缺的标签之一,它负责提供文档的元信息,其参数主要有:
① http-equiv: 与文档中数据相关的HTTP文件首部
② content: 与命名HTTP首部相关的数据
③ name: 文档描述
④ url: 与元信息相联系的URL
当我们定义属性http-equiv为refresh,打开此Web页时系统将根据content规定的值在一定时间内跳转到相应页面,
content="秒数;url=网址"就是定义了过多长时间跳转到指定的网址.
以下meta标签告诉系统一秒钟后页面自动跳转到百度首页:
meta http-equiv="refresh" content="1;url="
以上代码需要加在HTTP文档首部中,介于head与/head之间,通常,meta标签是紧跟在head之后.若需要有多个meta标签,
它们可以各占一行. 此法通用于任何环境,包含静态的网站空间.
方法二:使用header函数?
header函数是php内置函数中的HTTP相关函数之一,该函数送出HTTP协议标头到浏览器.
使用它可以重定向URL,即令页面转向其他指定的网页.
以下例子,执行后将自动打开:
header("Location: ");
必须注意,header函数只能用在页面代码中的html标签之前,亦即,HTTP首部尚未有其他任何标头(head)传送给浏览器之前,而且,此前页面也不能print或echo任何内容.换句话说,在页面的html出现前,程序只单纯地处理header事件.
尽管有如此严格的要求,灵活地使用它,仍然可以达成页面的自动跳转功能,比如登录页面,通过判断用户提交的数据是否合法来决定页面跳转到何处.
方法三:使用JavaScript
JS非常灵活,利用它可以做出功能非常强大的程序脚本,这里仅举一个简单的页面自动跳转的JS例子.
以下代码执行后浏览器将自动转到,该代码可放在页面中的任何合法的位置:
<script language="javascript" type="text/javascript"> window.location.href(""); </script>
此代码适用于任何Web环境.若加入定时器,将更加妙不可言
方法一:header("Location: viewNote.php");
方法二:echo "scrīptwindow.location ="$PHP_SELF";/scrīpt";
方法三:echo "META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php"";
注意:方法一中,?php header("Location: viewNote.php"); ? 前面不能输出任何内容包括空格
①.、thinkPHP 的Action类的redirect方法可以实现页面的重定向功能,redirect 重定向的通用语法为:edirect(url,params=array(),delay=0,msg='') //?跳转到?edit?操作 ?$this-redirect('edit').
如何在PHP中从一个页面重定向到另外一个页面呢?今天清源为大家列举出了三种办法,供大家来参考.
工具/原料
php页面
方法/步骤
第一段:用HTTP头信息
也就是用PHP的HEADER函数.PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型("Context-type: xxx/xxx"),页面的属性("No cache", "Expire")等等.
用HTTP头信息重定向到另外一个页面的方法如下:
代码如下:
[php] view plaincopy
if (isset($url))
{
Header("Location: $url");
exit; //
}
注意一下,"Localtion:"后面有一个空格.
第二段:用HTML标记
用HTML标记,就是用META的REFRESH标记,举例如下:
if (!isset($url)) exit;?
HTML
HEAD
/HEAD
BODY
/BODY
/HTML
第三段:用脚本来实现
举例如下:
$url=";
echo "!--scrīpt LANGUAGE="Javascrīpt"";
echo "location.href='$url'";
echo "/scrīpt--";
第四种:
echo " meta http-equiv=\\"Refresh\\" content=\\"秒数; url=跳转的文件或地址\\" ";
其中:XX是秒数,0为立即跳转.refresh 是刷新的意思.Url 是要跳转到的页面.
第五种:利用script实现
scripturl="submit.php";window.location.href=url;/script
第六种:利用script实现,所不同的是使用 open 语句.且可以限制原窗口还是父窗口,子窗口或者新窗口.
scripturl="submit.php";window.open(\'url,\'\',\'_self\');/script
网页重定向就是将用户请求的网页转向其它位置.即当用户访问某个网页A时,网页A自动定向到网页B,这样用户实际看到的就是网页B了.
网页重定向在网站开发中经常使用,如:
①.) 公司的域名进行了变更,为了用户也能通过原有域名进行访问,就得使用重定向.常见的购物网站,好多都进行了域名变更,但原域名仍保留,输入原域名后,自动定向到新的域名.
下面介绍几种网页重定向的几种常用方法.
通过javascript脚本进行重定向
将a.html提交到b.html,b.html重定向到c.html.
(a.html相当于用户登录网页,b.html相当于验证用户信息网页,c.html相当于重定向的网页)
这里演示的仅是重定向的功能,所以呢代码尽可能简单.
a.html内容如下:
html
head
/head
body
form action="b.html"method="post"
input name = "submit"type="submit" value="提交"
/form
/body
/html
预览图如下:
b.html内容如下:
scripttype="text/javascript"
function load()
window.location ="c.html";
/script
body onload = "load()"
验证通过,现在进入用户信息页面.
c.html内容如下:
欢迎光临!
重点在b.html,重定向的代码就在其中的javascript脚本load()函数中.在b网页加载完毕后,会调用此函数,此函数的重定向代码就一句:
window.location = "c.html";
怎么样?是不是很简单.
如果想定向前其它网页,如百度首页,可以这么写:
window.location="";
注意"http://"不能少.
END
通过php代码进行重定向
因为涉及到php代码的执行,所以呢需要先做一个网站,这里假定网站已做好.
a.html中的代码很简单,只需将上面的form中的action改为指定b.php而不是b.html即可.
b.php的代码如下:
phpheader("Location:c.html"); ?
要在本地网站进行演示,可以将a.html、b.php、c.html拷贝到你的网站目录下,在浏览器地址栏中输入: localhost/a.html进行操作.
通过asp.net代码进行重定向
代码和php类似,因要先做一个支持asp.net运行的网站,将a.html中的action指定b.aspx,b.aspx中的代码如下:
% Server.Transfer("c.html"); %
通过jsp代码进行重定向
代码和php类似,因要先做一个支持jsp运行的网站,重定向代码如下:
jsp:forward page="c.html"
步骤/方法
php
$the_host = $_SERVER['HTTP_HOST']; //取得进入所输入的域名[网址:像]
$the_url = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''; //判断地址后面部分
$the_url = strtolower($the_url); //将英文字母转成小写
if($the_url=="/index.php") //判断是不是首页
$the_url=""; //如果是首页,赋值为空
header('Location:'.$the_url); //跳转到带www的网址
注 意一下:代码if($the_host !== '')中的"!=="是不完全等于的意思,也可以用"!="不等于,这样,除了可以将siyuan-seo.com 跳转到带www的网址,还可以把所有绑定到这个空间的域名跳转的.
Header("Location: ");
如下图:
当你发现自己的才华撑不起野心时,就请安静下来学习吧