【问题标题】:How to change page url? [closed]如何更改页面网址? [关闭]
【发布时间】:2012-02-01 23:47:10
【问题描述】:

如何获取页面url,然后在地址栏中一次根据查询结果重命名url?

抱歉,描述太短了..

如何更改页面 url(使用 exmple.php?id=2 页面,但 url 将只是名称 www.something.org/zzz 其中 zzz 是与 id 关联的名称的值,没有任何将根据查询更改的扩展名)?

【问题讨论】:

  • 我不想这么说,但你的问题引发了很多问题。你能解释一下你想做什么吗? URL 是用户发送到网络服务器以请求某些内容的内容。您想在用户访问某个页面后重定向用户吗?
  • 另见so-hints和How To Ask。
  • 对不起,简短的描述.. 如何更改页面 url(使用 exmple.php?id=2 页面,但 url 只是名称 www.something.org/zzz 其中 zzz 是与 id 关联的名称的值,没有任何将根据查询更改的扩展名)?

标签: php html mod-rewrite


【解决方案1】:

查看$_SERVER['REQUEST_URI'] 和header("Location : ") 的php 文档。

【讨论】:

    【解决方案2】:

    我真的不知道你的要求是什么,

    但是如果你想获取你所在页面的 URL:

    $_SERVER['REQUEST_URI']
    

    或者,如果您谈到从查询字符串中获取某些内容,您会使用:

    $_GET['page'] 
    

    Page 是 page.php?page=this_page 的查询字符串

    【讨论】:

    • 对不起,简短的描述.. 如何更改页面 url(使用 exmple.php?id=2 页面,但 url 只是名称 www.something.org/zzz 其中 zzz 是与 id 关联的名称的值,没有任何将根据查询更改的扩展名)?
    【解决方案3】:

    听起来您正在寻找类似mod_rewrite 的东西。

    这里有一个更容易阅读的解释:http://corz.org/serv/tricks/htaccess2.php


    编辑

    我认为你需要这样的东西:

    example.php:

    <?php
        if (!$_GET["name"] && $_GET["id"])
        {
            // perform MySQL query to get name based on id
    
            header("Location: http://www.something.org/zzz");
            die();   // stop execution of this page
        }
    
        // if we got here, $_GET["name"] is set, so do whatever this script is supposed to do.
    ?>
    

    .htaccess: *见下面的注释

    Options +FollowSymLinks
    RewriteEngine On
    
    # the following rule will change the URL http://www.something.org/example.php?name=zzz to http://www.something.org/zzz
    RewriteRule ^(^example.php?name=(.*)) example.php?name=$1 [NC]
    

    注意: 上面的 .htaccess 示例未经测试,很有可能无法正常工作,但希望这会有所帮助,您可以弄清楚如何调整它做你想做的事。

    【讨论】:

    • 对不起,简短的描述.. 如何更改页面 url(使用 exmple.php?id=2 页面,但 url 只是名称 www.something.org/zzz 其中 zzz 是与 id 关联的名称的值,没有任何将根据查询更改的扩展名)?
    • @Mahfuz:你将如何获得与 id 关联的值?通过 MySQL 查询?您是希望页面实际重定向到该 URL,还是只希望地址栏中的 URL 更改而不实际重定向?
    • 是的,通过 mysql 查询。实际上我希望地址栏在没有实际重定向的情况下改变。
    • 是的,通过 mysql 查询,我想要它而不实际重定向。
    • 或在加载时重定向。但是如果没有重定向就可以了。
    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 2014-08-22
    • 1970-01-01
    • 2010-12-26
    • 1970-01-01
    • 2012-02-14
    • 1970-01-01
    • 2021-08-11
    相关资源
    最近更新 更多