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 编程中的一个关于图片的库 imageio (读取照片RGB内容,转换照片格式)

    最近在看机器学习方面的东西,经常遇到需要把某个类型的照片中 RGB 内容读取出来, 在python中照片显示用matplotlib就可以做到,但是导入不同格式的照片,保持出不同格式的照片numpy, ...

  2. Python3.5 源码安装 Ubuntu16.04环境

    安装源码编译所需的各种依赖库:(Ubuntu16.04环境下) sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-de ...

  3. 为什么有logistics函数

    直观地看: 如果是softmax函数,我想有跟多的选择方向吧

  4. ZetCode PyQt4 tutorial widgets II

    #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode PyQt4 tutorial In this example, ...

  5. Dijkstra算法(C语言)

    Dijkstra算法 1.定义概览 Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止.Di ...

  6. MD文件

    了解一个项目,恐怕首先都是通过其Readme文件了解信息.如果你以为Readme文件都是随便写写的那你就错了.github,oschina git gitcafe的代码托管平台上的项目的Readme. ...

  7. memsql 多节点部署

    以前部署使用的是docker,这个测试使用的是阿里云的机器 没有使用企业版,使用的是开发版,为一个master 多个Leaf 机器列表 172.31.128.165 172.31.128.166 17 ...

  8. TortoiseSVN比较工具设置为BeyondCompare 4

    打开TortoiseSVN的Setting,选择左边的Diff Viewer 设置如下: "D:\Program Files\Beyond Compare 4\BComp.exe" ...

  9. ORM sqlachemy

    本节内容 ORM介绍 sqlalchemy安装 sqlalchemy基本使用 多外键关联 多对多关系 表结构设计作业 1. ORM介绍 orm英文全称object relational mapping ...

  10. SOLR对多个(关联)表创建索引

    又两天没写博客,关于SOLR的东西,写了一周了还没写完我也是醉了,毕竟会的东西真不多,周四晚上加班没写,周五晚上公司同事聚会也没写,今天在家,还是把最后的一点写完吧,我会的剩下的也就是一个对多个表创建 ...