获取地址栏的URL: PHP JS
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的更多相关文章
- 什么?你还不会获取地址栏(url)的值
function getUrlParam(name) {//封装方法 var reg = new RegExp("(^|&)" + name + "=([^&am ...
- js动态获取地址栏后的参数
原文链接:https://blog.csdn.net/qq_37936542/article/details/78866651 需求:js动态的获取地址栏后面的参数 js代码: alert(GetQu ...
- fileReader对象读取txt文件乱码问题 以及如何获取文件的url路径(绝对路径)
<input type="file" @change="aaa($event)"> <div id="hi">< ...
- js获取地址栏url以及获取url参数
js原生态写法 代码如下 复制代码 function getUrlParam(name) { var reg = new RegExp("(^|&)"+ name ...
- JS如何获取地址栏url后面的参数?
本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:JS如何获取地址栏url后面的参数?: 这里提供了两种获取地址栏url后面参数的方法: 方式1 传参: window.location. ...
- js获取地址栏URL上的参数
获取地址栏上的URL参数现在最简单通用的方法应该就是下面这种了. function getUrlParam (name) { var reg = new RegExp('(^|&)' + na ...
- 使用js jquery分别获取地址栏参数值
使用JS获取地址栏参数 方法一: function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +& ...
- 【功能代码】---4用JS获取地址栏参数方法
用JS获取地址栏参数方法 // 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg = new Reg ...
- (转)用JS获取地址栏参数的方法(超级简单)
转自http://www.cnblogs.com/fishtreeyu/archive/2011/02/27/1966178.html 用JS获取地址栏参数的方法(超级简单) 方法一:采用正则表达式获 ...
随机推荐
- Buildroot make网卡interfaces文件被修改
/******************************************************************************** * Buildroot make网卡 ...
- mysql下,保存时间时具体时间丢失,只保存了日期的问题
将日志信息记入数据库时增加了一个时间字段,发现存入数据库时只保留了日期,而没有时分秒信息. 我这边环境是(SRPINGMVC+Mybatis,mysql版本5.6.28以上),java层使用类型为ja ...
- java 之DelayQueue,TaskDelayed,handlerFactory,dataChange消息配置.收发等.java spring事务处理TransactionTemplate
java 之DelayQueue,TaskDelayed,handlerFactory,dataChange消息配置.收发等.java spring事务处理TransactionTemplate等. ...
- 使用GitHub进行项目创建——初级,非指令版,纯软件操作
主要步骤如下: 1.申请一个GitHub账号,官网按照步骤来就行 2.下载一个GitHub DeskTop(https://desktop.github.com/),命令什么的以后说不定会写把 3.创 ...
- CentOS+Apache虚拟主机域名设置
首先注释掉 DocumentRoot /var/www/html <virtualhost 192.168.1.105> DocumentRoot /home/wxwb ...
- windows server 2012 双网卡配置
别用route 命令!!!!!! 在使用最新版的windows server 2012的时候,当存在两个或者多个网段的时候,就可以采用双网卡的方式来添加和配置路由.具体的设置方法如下: 网段1 19 ...
- 介绍一个开源的 C++ 开发框架 openFrameworks 。
作为一个图形图像方向的研究生,我经常都在和 OpenGL .OpenCV 等多种 C++ 库打交道.这些库遵循着不同的规则和用法:另外,为了让自己的程序具有更多的交互能力,编写界面也是一个家常便饭的工 ...
- HDU 2201 熊猫阿波的故事
熊猫阿波的故事 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/
编译php出现错误: configure: error: Please reinstall the libcurl distribution - easy.h should be in <cur ...
- json中key大小写转换
最近工作中遇到json格式的字符串中的key为大写的,需要转换成小写的来解析,开始想使用正则来替换,结果不是很方便,后来考虑把JSONObject重新来封装. 如下json格式:{PWACHECKIN ...