`

PHP Header用于页面跳转要注意的几个问题总结

阅读更多
在PHP中用header("location:test.php")进行跳转要注意以下几点,有助于解决一些新手经常遇到的问题
1、location和“:”号间不能有空格,否则会出错。
2、在用header前不能有任何的输出。
3、header后的PHP代码还会被执行。


下面是和asp中重定向response.redirect的比较:
例1:
response.redirect "../test.asp"
header("location:../test.php");

两者区别:
asp的redirect函数可以在向客户发送头文件后起作用.

<html><head></head><body>
<%response.redirect "../test.asp"%>
</body></html>

查是php中下例代码会报错:
<html><head></head><body>
<? header("location:../test.php"); ?>
</body></html>

只能这样:
<? header("location:../test.php"); ?>
<html><head></head><body>...</body></html>
即header函数之前不能向客户发送任何数据.

例2:
asp中
<html><head></head><body>
<%
response.redirect "../a.asp"
response.redirect "../b.asp"
%>
</body></html>
结果是重定向a.asp文件.
php呢?
<?
header("location:../a.php");
header("location:../b.php");
?>
<html><head></head><body></body></html>
我们发现它重定向b.php.
原来在asp中执行redirect后不会再执行后面的代码.
而php在执行header后,继续执行下面的代码.
在这方面上php中的header重定向不如asp中的重定向.有时我们要重定向后,不能执行后面的代码:
一般地我们用
if(...)
header("...");
else
{
...
}
但是我们可以简单的用下面的方法:
if(...)
{ header("...");exit();}
还要注意的是,如果是用Unicode(UTF-8)编码时也会出现问题,需要调整缓存设置.
<[email=%@]%@LANGUAGE="VBSCRIPT[/email]" CODEPAGE="936"%>
<%if Request.ServerVariables("SERVER_NAME")="s.jb51.net" then
response.redirect "news/index.htm"
else%>
<%end if%>
<script>
var url = location.href;
if(url.indexOf('http://www.jb51.net/')!=-1)location.href='/index/index.htm';
if(url.indexOf('http://www.kanshule.com/')!=-1)location.href='/index1/index.htm';
if(url.indexOf('http://www.shouji17.com/')!=-1)location.href='/cn/index.asp';
if(url.indexOf('http://www.baidu.com/')!=-1)location.href='/cn/index.asp';
</script>
分享到:
评论

相关推荐

    PHP Header用于页面跳转时的几个注意事项

    本文介绍的是在PHP中用header(location:test.php)进行跳转要注意以下几点,有助于解决一些新手经常遇到的问题 一、location和“:”号间不能有空格,否则会出错。 二、在用header前不能有任何的输出。 三、header后...

    php页面自动跳转的几种实现方法

    如果要使用 `header` 函数进行页面跳转,需要注意以下几点: - `header` 函数必须在任何实际输出之前调用,包括空格、换行等。 - 如果页面已经开始了输出,比如通过 `echo` 或 `print` 输出了内容,则 `header` 函数...

    PHP自动跳转 header和Meta以及script各方法

    为了更全面地展示不同方法之间的区别与联系,下面提供几个综合示例: **PHP Header 方法**: ```php // PHP 源代码 header("Location: http://www.php.com"); ``` **Meta Refresh 方法**: ```php // meta echo ...

    php网页跳转代码大全

    在Web开发中,网页跳转是非常常见的一种需求,它可以让用户从当前页面自动跳转到另一个页面或者网址。这种功能可以用于多种场景,比如登录验证成功后的页面重定向、操作完成后返回首页等。对于PHP开发者来说,掌握几...

    PHP JS根据自定义来路域名跳转到指定页面源码

    这个源码集可能是用于帮助开发者构建一个系统,它能够识别用户来自哪个网站,并据此决定将用户重定向到哪个内部页面。 首先,我们来了解一下PHP和JavaScript在这其中的角色: **PHP** 是一种服务器端脚本语言,常...

    PHP利用header跳转失效的解决方法

    根据上述规则,下面总结了几个具体的解决header跳转失效的方法: 方法一:使用ob_start()和ob_end_flush()控制输出。在脚本开始处使用ob_start(),直到header跳转语句之后,再使用ob_end_flush()来确保之前所有的...

    PHP页面跳转实现延时跳转的方法

    要正确使用`header()`函数,有几点需要注意: - **必须在任何输出之前调用**:因为HTTP头信息需要在任何HTML或其他输出之前发送,所以`header()`函数必须放在PHP脚本的最开始,且在输出任何字符之前。 - **无缓存...

    php入口文件自动判断手机web端跳转

    在PHP开发中,一个常见的需求是为网站提供移动端适配,即当用户通过手机访问时,网站能够自动识别并跳转到相应的移动版页面。"php入口文件自动判断手机web端跳转"这一主题,主要涉及到如何在PHP的入口文件(如index....

    php用header函数实现301跳转代码实例

    在使用header函数进行301跳转时,需要注意以下几点: 1. header函数必须在任何实际输出发送到浏览器之前调用。这意味着在header函数之前不能有任何echo或HTML代码输出。否则会出现"headers already sent"的错误。 2...

    php开发中的页面跳转方法总结

    页面跳转可能是由于用户单击链接、按钮等触发的,也可能是系统自动产生的。页面自动跳转在WEB开发中经常用到,而且根据需求可以采用不同的跳转...我们有可能会遇到特殊的跳转时,比如网站改版有个页面地址要做301重定

    实现网页页面跳转的几种方法(meta标签、js实现、php实现)

    网页页面跳转是Web开发中常见的一种操作,用于引导用户从一个页面自动转移到另一个页面。在不同的编程语言和环境中,实现这一功能有多种方法。以下是关于网页页面跳转的详细解释,包括`meta`标签、JavaScript和PHP的...

    跳转最新源码_在网上找的QQ防红跳转源码_

    QQ防红跳转源码是一种常见的技术,用于解决在网站中分享链接到QQ或QQ空间时,链接被QQ浏览器自动识别并标记为“可能存在风险”的问题。这是因为QQ系统会检查链接是否指向已知的有害网站,为了保护用户安全,会对这些...

    基于PHP的网站跳转代码在线生成工具.zip

    在Web开发中,有时我们需要让用户从一个页面自动重定向到另一个页面,例如登录成功后的欢迎页、错误页面的友好提示或者URL结构改变时的旧链接处理。这个工具简化了这个过程,允许开发者通过简单的界面生成自定义的...

    php中header跳转使用include包含解决参数丢失问题

    有同事反映,最近上线的几款游戏海外注册载入不了样式文件,需要紧急修复。...header跳转后的页面,不能继承上一页的变量等元素,举例说明: a.php文件 $userEname = crystal; $userCname = 程程; //

    PHP跳转页面的几种实现方法详解

    •PHP页面跳转一、header()函数header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。header()函数的定义如下:void header (string string [,bool ...

    php常见的页面跳转方法汇总

    在php编写中有时会用户页面跳转,在这里收集了几种不错的跳转方法,可以用到。 用HTTP头信息实现 也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制...

Global site tag (gtag.js) - Google Analytics