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

时间:2009-12-16 21:10:25

标签: php url

对于给定的URL,我想从数据库中获取hash-after-hash的年龄。所以对于thepage.php#Madonna这样的网址,您会看到“119!”。

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

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

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

3 个答案:

答案 0 :(得分:8)

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

答案 1 :(得分:6)

的Javascript

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

PHP

检查parse_url();

的片段

返回值

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

  • 计划 - 例如HTTP
  • 宿主
  • 端口
  • 用户
  • 路径
  • 查询 - 问号后?
  • 片段 - 在hashmark#
  • 之后

答案 2 :(得分:0)

这个问题没有多大意义,你需要澄清它。

您希望在没有Javascript的情况下对URL进行哈希处理,但是Ajax可以使用这种方式吗?