我在我的网站上使用PHP
。我想获取类似test/show.php?ID=247#about
的网址值。
当我使用会话变量
时<?php
session_start();
$url = $_SERVER['REQUEST_URI'];
echo $url;
?>
仅打印test/show.php?ID=247
。
我没有得到#about
。这个#about我想用来重定向我的主页面菜单。
任何人都可以告诉我如何获得它。
谢谢。答案 0 :(得分:2)
您不能 - 没有自定义客户端支持 1
"hash" (or Fragment Identifier) 未正常发送到服务器。
片段标识符的功能与URI的其余部分不同:即其处理完全是客户端的,没有Web服务器的参与 ..当代理(例如Web浏览器)时代理从Web服务器请求Web资源,代理将URI发送到服务器,但不发送片段。相反,代理等待服务器发送资源,然后代理根据文档类型和片段值处理资源。
1 例如,您可以在submit
形式的事件中使用JavaScript钩子,根据需要从window.location.hash
读取,并将值推送到窗体的控件中然而,由于以下几个原因,应该重新考虑(或者更确切地说,避免)一般设计:
答案 1 :(得分:1)
您无法在PHP中访问tis part(哈希),您可以使用JavaScript
访问它<script type="text/javascript">
alert(document.location.hash)
</script>