php按钮跳转不同页面跳转,PHP页面跳转的几种实现方法-程序员宅基地

技术标签: php按钮跳转不同页面跳转  

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

一、PHP header()函数跳转

PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向:$url = "http://www.dnjs.net/";

header( "Location: $url" );

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

header( "HTTP/1.1 301 Moved Permanently" );

header( "Location: $url" );

二、Meta设置跳转

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

中加上一句:

以上代码表示在5秒钟后页面会自动跳转到舒适慢生活官网。

三、Javascript跳转

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

window.location.href="http://www.456lives.com";

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

//有来路

var aa = document.createElement("a");

aa.setAttribute("href","http://www.dnjs.net");

var bodys=document.getElementsByTagName("body")[0];

bodys.appendChild(aa);

aa.click();

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

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_32612253/article/details/115756789

智能推荐

ArcPy中mapping常见函数及用法1-程序员宅基地

文章浏览阅读1.1k次。  arcpy的mapping模块常见属性方法总结1.如何获取当前地图文档: 方式:mxd = mapping.MapDocument("CURRTENT")引用本地或者网络文档(arcpy.mapping.Document("文件路径"))2.如何获取当前图层的图层列表: Eg:import arcpy.mapping as mapping   mxd = mapping.M..._arcpy mapping

js数字转千分位 保留小数位_整数千分位 js,小数点保留-程序员宅基地

文章浏览阅读2.4k次。保留原有形式,有小数点的保留小数位,整型的依然返回整型(String)formatData(num){ num = num + ''; if (!num.includes('.')) { num += '.' } return num.replace(/(\d)(?=(\d{3})+\.)/g, function ($0, $1) { ..._整数千分位 js,小数点保留

Altium Designer 从导入DXF文件,并转换成板框_ad24导入的孔怎么转换为板框的孔-程序员宅基地

文章浏览阅读7.4k次,点赞2次,收藏5次。http://www.cnblogs.com/craftor/archive/2012/06/28/2567259.html大多数人都知道,PADS中导入DXF文件,然后转换成板框,是很方便的。AD也同样可以做到。PADS导入DXF见:http://www.cnblogs.com/craftor/archive/2012/01/14/2322446.html 1_ad24导入的孔怎么转换为板框的孔

【Elasticsearch】es 写入 忽略 错误字段 存储正确字段 ignore_malformed_es 查询时忽略格式不正确的ip-程序员宅基地

文章浏览阅读1.6k次。1.概述官网:https://www.elastic.co/guide/en/elasticsearch/reference/current/ignore-malformed.html#ignore-malformed我们经常碰到一些内容不规范或者格式不对的数据,例如某个IP字段的里出现"UNKNOWN",某个数字字段出现"-"。如果在这些字段上已经设置了明确的类型,比如"ip"或者"float",字段中出现了非该类型的值,ES会抛出异常并丢弃整条数据。我们可以在该字段上设置"ignore_malf._es 查询时忽略格式不正确的ip

Spring 基于SSM框架,BaseDao --> dao层的抽取优化_优化ssm项目的dao层-程序员宅基地

文章浏览阅读1.9k次。通常来说,在一个项目中我们会使用到多个dao,比如在一个信息管理系统中,有 UserDao/ MessageDao等; 每个 dao 都有相同的 CRUD 代码,每个 dao 去写也是可以的,但是代码量会偏多,代码结构不够好,显得比较臃肿;实际上可以通过泛型来抽取出一个 BaseDao,这个 BaseDao 包含了各个 dao 的增删改查代码,创建新的 dao 时继承BaseDao,就可以减少很_优化ssm项目的dao层

自动整理html书签,Bookmarks Organizer - Chrome书签整理排序-程序员宅基地

文章浏览阅读1.7k次。Bookmarks Organizer Chrome开发背景很多人都会随手保存书签方便下次使用,但你书签保存多了就知道什么叫做灾难了,很多的书签、还有一些是重复或者链接失效的书签,找起来特别麻烦,书签太多,不好管理怎么办?Bookmarks Organizer帮助你管理你的书签。Bookmarks Organizer有适用于Chrome浏览器和firefox浏览器两种,虽然名字相同,而且同样是管理..._bookmarks organizer

随便推点

java 调用 ora-04068_在Java/JDBC中透明处理“ORA-04068”错误-程序员宅基地

文章浏览阅读320次。转载自:http://database.ctocio.com.cn/tips/14/8106014.shtml在Oracle 里,如果你想编写存储过程你当然应该使用PL/SQL包。在这篇文章里,假设你一般了解PL/SQL 和非常熟悉PL/SQL 包。这篇文章关注于一个令人讨厌的错误,这个错误使许多使用PL/SQL以及使用API(例如JDBC)从应用层调用它的开发人员很苦恼。【IT专家网独家】导言在..._not executed, altered or dropped package body \"egp.egrb_policy_pkg\

swagger3 设置值可以为空_【Swagger2】【3】API注解详解,以及注解常用参数配置-程序员宅基地

文章浏览阅读370次。前言:@Api,@ApiOperation,@ApiImplicitParam,@ApiModelProperty,@ApiIgnore正文:一,Controller层@ApiIgnore@CrossOrigin(origins= "*")@RestController@Api(tags= {"文章接口"})public classArticleController {@ApiIgnore@Api..._io.swagger.v3.oas @apiignore

python stdout stderr 一起输出_关于python:您可以愚弄isatty并分别记录stdout和stderr吗?...-程序员宅基地

文章浏览阅读344次。问题因此,您想(分别)记录一个进程或子进程的stdout和stderr,如果您未记录任何内容,则输出不会与在终端中看到的输出不同。似乎很简单,不是吗?不幸的是,似乎不可能为这个问题写一个通用的解决方案,该解决方案适用于任何给定的流程...背景管道重定向是一种分离stdout和stderr的方法,允许您分别记录它们。不幸的是,如果将stdout / err更改为管道,则该过程可能会检测到该管道不是t..._subprocess.popen stdout和stderr定向到同一输出

jQuery学习点滴_"$(\"p\").css(\"color\")"-程序员宅基地

文章浏览阅读2.1k次。jQuery学习点滴   在学习之余对jquery提供的方法进行分类总结,下文有些抄摘w3cschool,只为以后使用起来方便查找!jQuery 语法jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作。基础语法是:$(selector).action()美元符号定义 jQuery 选择符(selector)“查询”和“查找” HTML 元素 jQ_"$(\"p\").css(\"color\")"

android security模块,Android security-crypto 库使用-程序员宅基地

文章浏览阅读675次。Note: 只支持Android 6.0 以上dependencies {def security_version = "1.0.0-alpha02"implementation "androidx.security:security-crypto:$security_version"}文件内容操作e.g : 文件写入private fun writeFile(){val key = Master..._androidx.security:security-cypto

[Androd] Gradle 使用技巧之模块依赖替换_dependencysubstitution-程序员宅基地

文章浏览阅读516次。我们在多模块项目开发过程中,会遇到这样的场景,工程里依赖了一个自己的或者其他同事的 模块,有时候为了开发调试方便,经常会把 改为本地源码依赖,开发完毕并提交的时候,会再修改回 依赖,这样就会很不方便,开发流程图示如下:一开始我们通过在 的 里的 判断如果是需要本地依赖的 ,就替换为 依赖,伪代码如下:这样就可以不用每次提交代码还要修改回 依赖,但是如果其他模块如果也依赖了该 模块,就会出现问题,虽然可以继续修改其他模块里的依赖方式,但是这样就会有侵入性,而且不能彻底解决问题,仍然有可能出_dependencysubstitution