1. PHP 获取上一页的URL

在php中可以通过内置的变量的属性来获取上一页的URL: $_SERVER['HTTP_REFERER'].

但是在IE中如果跳转是通过js函数如: window.location.href 或者 window.open的话,  $_SERVER['HTTP_REFERER'] 返回的是空的。通过连接或者表单提交的则工作正常。FF工作正常。

另外$_SERVER[PHP_SELF]获取当前页面的url;

2. JS 获取上一页的URL

在js中也有document本身属性可以或许上一页的URL:document.referrer

但是这个跟php的 $_SERVER['HTTP_REFERER']一样,在IE中当是利用js函数跳转的话,得到的也是空值

但如果你仅仅想利用js来实现跳转到上一页或者是上上几页的话:

  • 返回到前第几个页面: window.history.go(返回第几页,也可以使用访问过的URL);
  • 返回前一个页面: history.go(-1), 返回两个页面: history.go(-2);
  • 返回前一页面: history.back();

使用方法<a href="javascript:history.back();">向上一页</a>

这个不管是IE还是FF都可以

php 获取上一页的URL
$urlshang = $_SERVER['HTTP_REFERER']; //可以得到上一页的地址
$urldan = $_SERVER['PHP_SELF']; //得到当前页面地址
$urlcan = $_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"]."?".$_SERVER["QUERY_STRING"];//这个可以得到带参数的地址 javascript实现:
top.location.href   顶级窗口的地址
this.location.href 当前窗口的地址
PHP实现
#测试网址:     http://localhost/blog/testurl.php?id=5

//获取域名或主机地址 
echo $_SERVER['HTTP_HOST']."<br>"; #localhost //获取网页地址
echo $_SERVER['PHP_SELF']."<br>"; #/blog/testurl.php //获取网址参数
echo $_SERVER["QUERY_STRING"]."<br>"; #id=5 //获取用户代理
echo $_SERVER['HTTP_REFERER']."<br>"; //获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
#http://localhost/blog/testurl.php?id=5 //包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
#http://localhost:80/blog/testurl.php?id=5 //只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"];
echo dirname($url);
#http://localhost/blog

获取地址栏的URL: PHP JS的更多相关文章

  1. 什么?你还不会获取地址栏(url)的值

    function getUrlParam(name) {//封装方法 var reg = new RegExp("(^|&)" + name + "=([^&am ...

  2. js动态获取地址栏后的参数

    原文链接:https://blog.csdn.net/qq_37936542/article/details/78866651 需求:js动态的获取地址栏后面的参数 js代码: alert(GetQu ...

  3. fileReader对象读取txt文件乱码问题 以及如何获取文件的url路径(绝对路径)

    <input type="file" @change="aaa($event)"> <div id="hi">< ...

  4. js获取地址栏url以及获取url参数

    js原生态写法  代码如下 复制代码 function getUrlParam(name) {     var reg = new RegExp("(^|&)"+ name ...

  5. JS如何获取地址栏url后面的参数?

    本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:JS如何获取地址栏url后面的参数?: 这里提供了两种获取地址栏url后面参数的方法: 方式1 传参: window.location. ...

  6. js获取地址栏URL上的参数

    获取地址栏上的URL参数现在最简单通用的方法应该就是下面这种了. function getUrlParam (name) { var reg = new RegExp('(^|&)' + na ...

  7. 使用js jquery分别获取地址栏参数值

    使用JS获取地址栏参数 方法一: function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +& ...

  8. 【功能代码】---4用JS获取地址栏参数方法

    用JS获取地址栏参数方法 // 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new Reg ...

  9. (转)用JS获取地址栏参数的方法(超级简单)

    转自http://www.cnblogs.com/fishtreeyu/archive/2011/02/27/1966178.html 用JS获取地址栏参数的方法(超级简单) 方法一:采用正则表达式获 ...

随机推荐

  1. python中的运算符优先级(其它语言也试用)

  2. 6款实用的硬盘、SSD固态硬盘、U盘、储存卡磁盘性能测试工具

    一.检测工具名称汇总 HDTune ATTO Disk Benchmark CrystalDiskMark AS SSD Benchmark Parkdale CrystalDiskInfo 二.各项 ...

  3. animationx详解

    animation是CSS3中极其强大的功能,它可以完成许多炫酷有趣的动画效果,网上也有非常不错的类库.下面将做详细介绍. 1.@keyframes:用于定义动画的具体动作(帧动作),一般要加上浏览器 ...

  4. 如何检测MySQL中建立的索引是否生效

    使用方法,在select语句前加上explain就可以了: EXPLAIN SELECT surname,first_name form a,b WHERE a.id=b.id EXPLAIN列的解释 ...

  5. graphql 文档 docker 镜像

    因为一些原因 graphql 的官方文档无法查看,后者查看不能是方便,所以在官方github 的文档基础上添加了容器构建, 方便进行查看,对于公司内部使用学习会比较好 原理 很简单,openresty ...

  6. debian下为apache启用rewrite模块

    如果我们是自己编译的apache,那么启用或禁用某个模块应该说是比较容易的事,只要修改apache的配置文件就可以了.但是我们没有理由不用已经做好的二进制文件进行安装,使用apt-get要方便多了. ...

  7. zedgraph控件怎么取得鼠标位置的坐标值(转帖)

    我想取得zedgraph控件上任意鼠标位置的坐标值,IsShowCursorValues可以显示鼠标位置的值但是不能提取赋值给其他的变量.用PointValueEvent这个事件又只能得到已经画出的点 ...

  8. Android Studio中 ADB WIFI插件进行无线调试实践

    首先要确保电脑和手机在同一个局域网中.具体步骤如下 1.Android Studio中安装ADB WIFI插件.安装成功后重启Android Studio.(没有安装过插件的同仁,请自己搜索) 2.手 ...

  9. 南京邮电大学网络攻防平台——WriteUp(持续更新)

    1.签到题 右键查看源代码直接获得flag 2.MD5collision(MD5碰撞) 观察源码发现md51等于QNKCDZO通过MD5加密的结果,使用在线解密发现结果为 0e830400451993 ...

  10. [转]VS2010 常用插件

    本文来自:http://developer.51cto.com/art/201403/432954_all.htm 虽然VS2010IDE功能已经非常强大了,但是在有些地方还是可以优化,或者说有更合适 ...