Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中使用hashtag重定向的最佳方法是什么?_Php_Jquery_Http Headers - Fatal编程技术网

在PHP中使用hashtag重定向的最佳方法是什么?

在PHP中使用hashtag重定向的最佳方法是什么?,php,jquery,http-headers,Php,Jquery,Http Headers,成功身份验证后,我通过调用header将用户发送到主页 Ulitimatley我想使用一个hashtag作为URL的一部分,例如,用户的URL如下所示: mysite/#!home 我可以这样做吗?还是有更好的方法在成功登录后将其重定向到主页?因为: if($success) { header('Location: yoursite/#!home'); exit(); } 不工作?因为: if($success) { header('Location: yoursit

成功身份验证后,我通过调用header将用户发送到主页

Ulitimatley我想使用一个hashtag作为URL的一部分,例如,用户的URL如下所示:

mysite/#!home
我可以这样做吗?还是有更好的方法在成功登录后将其重定向到主页?

因为:

if($success) {
    header('Location: yoursite/#!home');
    exit();
}
不工作?

因为:

if($success) {
    header('Location: yoursite/#!home');
    exit();
}

不起作用?

这种散列标签通常与所谓的寻址或深度链接(一种javascript页面导航)一起使用。您需要的是URL重写,它允许您执行诸如www.website.com/home之类的操作

深度链接:


Url重写:

这种散列标签通常与所谓的地址或深度链接(一种javascript页面导航)一起使用。您需要的是URL重写,它允许您执行诸如www.website.com/home之类的操作

深度链接:


Url重写:

您还可以将一个参数传递到成功的页面,并触发一些javascript以锚定用户(如果设置了该参数):

<script type="text/javascript">
    <?php if (isset($_GET['val'])) { ?>
        // redirect to the appropriate hash from parameter
        document.location.hash = "<?php echo $_GET['val'] ?>";
    <?php } ?>
</script>

这不会为您提供一个干净的URL,但如果您无法访问任何URL重写,这是一个快速修复方法。

您还可以将一个参数传递到成功的页面,并在设置该参数时触发一些javascript以锚定用户:

<script type="text/javascript">
    <?php if (isset($_GET['val'])) { ?>
        // redirect to the appropriate hash from parameter
        document.location.hash = "<?php echo $_GET['val'] ?>";
    <?php } ?>
</script>

这不会为您提供一个干净的URL,但如果您无法访问任何URL重写,这是一个快速修复方法。

PHP将无法看到哈希标记-哈希未发送到服务器后的任何内容。您可以将它与Javascript一起使用来触发重定向,但是这个问题的任何答案都与PHP无关。为什么不测试它呢?请记住,位置头需要一个完全限定的URI,如http://example.com/home.php.PHP 不会看到hashtag-hash未发送到服务器后的任何内容。您可以将它与Javascript一起使用来触发重定向,但是这个问题的任何答案都与PHP无关。为什么不测试它呢?请记住,位置头需要一个完全限定的URI,如http://example.com/home.php.is 真的那么容易吗?老实说,我还没试过。如果这是解决方案,那么我想我的问题是如何实际加载home.php?Mod_rewrite。看看特雷弗的答案,真的那么简单吗?老实说,我还没试过。如果这是解决方案,那么我想我的问题是如何实际加载home.php?Mod_rewrite。请看Trevor的回答。我已经用jquery查看了地址,但是我有点困惑如何在现有代码中使用API。您能提供一个使用我当前对home.php的重定向调用的示例吗?home.php加载我的菜单和主div标记id中的所有主内容。我这样做是为了根据用户选择将内容加载到主div标记中。为了保持简单,调用:header'Location:menu.php?home';有意义吗?理想情况下,我不想显示menu.php,而只想在URL中显示home。有什么想法吗?我已经用jquery查看了地址,但是我有点困惑如何在现有代码中使用API。您能提供一个使用我当前对home.php的重定向调用的示例吗?home.php加载我的菜单和主div标记id中的所有主内容。我这样做是为了根据用户选择将内容加载到主div标记中。为了保持简单,调用:header'Location:menu.php?home';有意义吗?理想情况下,我不想显示menu.php,而只想在URL中显示home。有什么想法吗?