【问题标题】:PHP echo the hash urlPHP 回显哈希 url
【发布时间】:2011-06-30 20:08:53
【问题描述】:

我正在尝试在 URL 末尾回显哈希。

这没用

<?php 

echo '<script type="text/javascript">
$(this).hash.substring(1);</script>';?>

有什么想法吗?

【问题讨论】:

  • 这实际上与 PHP 无关,因为您正在输出 Javascript。不重要,但对于将来的标记
  • 你知道$(this)在你的代码中指的是什么吗?
  • 最好用TAGS改正,错误的标签会让你看不到问题。像我一样将 C++ 设置为从问题列表中隐藏。

标签: php jquery hash


【解决方案1】:

改用location.hash.substring(1)

echo '<script type="text/javascript">
var fragment = location.hash.substring(1);</script>';

请注意,此 PHP 代码只会回显 HTML 和 JavaScript 代码以获取该片段值。 PHP 本身无法检索 URI 的那部分,因为它不是请求的 URI 的一部分,而是仅在本地可用。

【讨论】:

    【解决方案2】:

    看起来您正在尝试结合两种语言,但我认为以这种方式做您想做的事是不可能的。猜测一下,您正试图从这样的网址获取“#hashbit”:

    http://www.example.com/page.php?something#hashbit
    

    很遗憾,浏览器没有将“#hashbit”发送到服务器。它仅用于客户端。您可以编写一些 JavaScript 来分别将“#hashbit”抓取到服务器。

    【讨论】:

    • "您可以编写一些 JavaScript 来分别将“#hashbit”抓取到服务器。"这正是他正在做的事情;问题似乎是 JavaScript 无法正常工作,因为对隐式 this 变量的使用感到困惑。
    • 在我看来,他正在做的是试图通过在 PHP 中执行 JS 来获取 PHP 的哈希值。或者这是一个 JS 问题,而 PHP 不相关。无论哪种方式,混乱比比皆是:)
    猜你喜欢
    • 2012-05-28
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 2010-10-31
    • 2010-12-29
    • 2010-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多