如何在"somepage.php #name"中获取哈希值后的值?

Gal*_*Gal 1 php url

对于给定的URL,我想从数据库中获取hash-after-hash的年龄.所以对于网址来说thepage.php#Madonna,你会看到" 119!".

如何在URL中的哈希值后提取值?(我需要一个安全的全浏览器兼容的NON-JAVASCRIPT方式).我想像$ _GET ['哈希'之后'那样做.

我没有使用GET的原因是因为我想使用AJAX和jquery的历史插件.

基本上我想要的是使用ajax根据哈希后分配的值从服务器检索数据.

小智 9

我不认为这是可能的.#之后的字符串被浏览器解释为当前页面中的锚名称.它不会传递给服务器.

  • 绝对是一个好点 - 当前页面的URL片段不可用于PHP.然而,目前还不清楚这是否与OP的问题相关.片段**可用于Javascript. (2认同)

Sam*_*son 6

使用Javascript

window.location.hash会给你这个价值.然后,您可以将其(通过AJAX)传递给服务器以获得结果.

PHP

检查parse_url()的片段;

返回值

在严重格式错误的URL上,parse_url()可能返回FALSE并发出E_WARNING.否则返回一个关联数组,其组件可能是(至少一个):

  • 方案 - 例如http
  • 主办
  • 港口
  • 用户
  • 通过
  • 路径
  • 查询 - 问号后?
  • 片段 - 在hashmark之后#