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


Posted in PHP onApril 26, 2015

页面跳转可能是由于用户单击链接、按钮等触发的,也可能是系统自动产生的。页面自动跳转在WEB开发中经常用到,而且根据需求可以采用不同的跳转方式,比如提示操作信息后延时跳转等, 本文总结了WEB开发中常见的几种页面跳转方法。

PHP header()函数跳转

PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向:

$url = "https://3water.com/";  
header( "Location: $url" );

我们有可能会遇到特殊的跳转时,比如网站改版有个页面地址要做301重定向,当然你可以通过web配置rewrite来实现,但现在我要告诉大家,可以使用php的header()函数做301跳转,代码如下:

//301跳转 
header( "HTTP/1.1 301 Moved Permanently" );   
header( "Location: $url" );

Meta设置跳转

html中的meta信息里可以直接设置跳转,可以设置跳转延迟时间和跳转url,经常应用,比如支付完了告诉用户支付成功并跳转到订单页面,代码非常简单,就在<head>中加上一句:

<meta http-equiv="refresh" content="5;url=https://3water.com">

以上代码表示在5秒钟后页面会自动跳转到https://3water.com。

Javascript跳转

Javascript跳转也非常简单,直接一句话:

<script> 
window.location.href="https://3water.com"; 
</script>

注意,上面这段代码直接跳转后,在目标页面地址中是获取不到来路(referer,也叫来源)的,在实际项目中,遇到有客户要求跳转要带来路(即目标网页可以获取到页面从哪里跳转来的),这时,我们可以用javascript模拟一次点击,然后跳转就满足了客户的需求。
 

<script> 
//有来路 
var aa = document.createElement("a"); 
aa.setAttribute("href","https://3water.com"); 
var bodys=document.getElementsByTagName("body")[0]; 
bodys.appendChild(aa); 
aa.click(); 
</script>

当然,实际开发中我们可以把后面两种方式整合到PHP中去,便于适用各种跳转需求。

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
一个简单的自动发送邮件系统(三)
Oct 09 PHP
使用adodb lite解决问题
Dec 31 PHP
PHP中创建空文件的代码[file_put_contents vs touch]
Jan 20 PHP
php导入导出excel实例
Oct 25 PHP
php使用百度翻译api示例分享
Jan 31 PHP
xss防御之php利用httponly防xss攻击
Mar 21 PHP
Thinkphp无限级分类代码
Nov 11 PHP
Symfony2开发之控制器用法实例分析
Feb 05 PHP
PHP实现的网站目录扫描索引工具
Sep 08 PHP
Laravel框架FormRequest中重写错误处理的方法
Feb 18 PHP
Laravel第三方包报class not found的解决方法
Oct 13 PHP
TP5框架实现上传多张图片的方法分析
Mar 29 PHP
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
Apr 26 #PHP
PHP开启opcache提升代码性能
Apr 26 #PHP
php格式化电话号码的方法
Apr 24 #PHP
php生成年月日下载列表的方法
Apr 24 #PHP
PHP传参之传值与传址的区别
Apr 24 #PHP
php获取访问者IP地址汇总
Apr 24 #PHP
php实现的RSS生成类实例
Apr 23 #PHP
You might like
PHP 编程的 5个良好习惯
2009/02/20 PHP
php下保存远程图片到本地的办法
2010/08/08 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
2013/04/15 PHP
PHP date()函数警告: It is not safe to rely on the system解决方法
2014/08/20 PHP
thinkPHP简单调用函数与类库的方法
2017/03/15 PHP
Laravel如何创建服务器提供者实例代码
2019/04/15 PHP
thinkPHP5使用Rabc实现权限管理
2019/08/28 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
2020/12/15 PHP
JS 模态对话框和非模态对话框操作技巧汇总
2013/04/15 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
2013/08/07 Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
2013/09/22 Javascript
浅谈javascript中字符串String与数组Array
2014/12/31 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
Bootstrap表单组件教程详解
2016/04/26 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
vue图片加载与显示默认图片实例代码
2017/03/16 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
[06:24]DOTA2 2015国际邀请赛中国区预选赛第二日TOP10
2015/05/27 DOTA
python基础练习之几个简单的游戏
2017/11/10 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
python爬虫爬取某网站视频的示例代码
2021/02/20 Python
HTML5中的音频和视频媒体播放元素小结
2016/01/29 HTML / CSS
如何使用amaze ui的分页样式封装一个通用的JS分页控件
2020/08/21 HTML / CSS
香港时装购物网站:ZALORA香港
2017/04/23 全球购物
策划助理岗位职责
2013/11/18 职场文书
销售行政专员职责
2014/01/03 职场文书
魅力教师事迹材料
2014/01/10 职场文书
工作疏忽检讨书
2014/01/25 职场文书
运动会通讯稿100字
2014/01/31 职场文书
节能环保演讲稿
2014/08/28 职场文书
党员转正介绍人意见
2015/06/03 职场文书
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers