【问题标题】:What's the best way to access a URI variable after a hashtag from php?在 php 的主题标签之后访问 URI 变量的最佳方法是什么?
【发布时间】:2011-01-10 17:36:50
【问题描述】:

我有 Javascript 更新我的 URI,如下所示:

/index.php?page=list#page=news

但我想让 page=news 以某种方式从我的服务器访问,以便在复制和粘贴 URI 时,它会转到新闻页面。最好的方法是什么?

我尝试了$_SERVER['REQUEST_URI'],但存储在$_SERVER 中的所有内容都在哈希标记之前。

【问题讨论】:

    标签: php javascript uri url-routing


    【解决方案1】:

    你不能。该数据称为片段,保留用于客户端处理,因此永远不会发送到服务器。

    使用片段的唯一方法是让 Javascript 在某个时候进行干预。这可能意味着检查页面onload 上的井号标签,然后显示正确的数据。

    您可以通过 Javascript 加载整个页面。虽然它会破坏任何关闭 Javascript 的人的兼容性,但它会确保哈希标签最终被发送到 PHP

    基本上,它看起来像这样:

    • PHP 发送页面
    • Javascript 读取标签
    • 使用主题标签参数创建 URL (loader.php?page=list&page=news)
      (请注意,在上面,page=list 将被page=news 覆盖,所以$_GET['page'] 将是news
    • 对 PHP 的 AJAX 调用
    • 将内容加载到 div 中。

    (而且这个问题是一个非常重复的问题)

    【讨论】:

    • 感谢您的快速响应。这也可以通过 javascript 客户端重定向实现吗?但是我如何让它忽略页面导航中包含的主题标签以防止无限循环?
    • 我建议的是一种非常“Javascript 应用程序”的做法,您只需打开一个页面,然后通过 AJAX 加载对其进行更改。你可以在 Javascript 中做一些检查 page GET 变量是否与主题标签 page 变量相同,它不会重定向。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-24
    • 2010-10-10
    • 1970-01-01
    • 2016-04-15
    • 2010-10-21
    相关资源
    最近更新 更多