【问题标题】:Load Database Data As dynamic Page将数据库数据加载为动态页面
【发布时间】:2016-10-27 06:48:03
【问题描述】:

如何根据数据库中的信息创建一个 uri。我知道如何发布到动态 php 页面并让它搜索数据库,然后使用 htaccess 重写该 url。但是我如何让 php 根据单击的 URI 链接生成页面,让我们在菜单中说例如:数据库将有一个唯一标题,它将是 URL 部分的唯一 uri,本质上,标题代表菜单中“a href”链接中的链接 uri。因此,如果 somesite.com/ 加载主页,但如果用户单击链接 somesite.com/a-dynamic-page/ 这将是一个动态生成的页面。我如何获取服务器而不是因为页面不存在而引发 404 错误,让 php 查看数据库并从数据库中加载数据,然后根据在数据库中找到的“a-dynamic”生成页面-page"

【问题讨论】:

    标签: php mysql url dynamic uri


    【解决方案1】:

    您可能想首先告诉 .htaccess 使用您编写的一些 php 脚本处理所有丢失的页面,方法是将其放入您的 .htaccess 文件中:

    <IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /my_processor.php [L]
    </IfModule>
    

    ... 这将有效地告诉 apache 对不存在页面的所有请求都应重定向到名为 my_processor.php 的脚本,直接位于您网站的文档根目录上。

    进入 my_processor.php 脚本后,您可以查看并解析 $_SERVER['REQUEST_URI'],并使用它来确定您的脚本接下来应该做什么。即:

    [my_processor.php]
    <?php
    
    //
    @$uri=$_SERVER['REQUEST_URI'];
    
    switch($uri)
    {
    
     default: die("Error");
    
     case "/some-path-1/":
      SomeFunction1();
      break;
    
     case "/some-path-2/":
      SomeFunction(2);
      break;
    }
    
    ?>
    

    请原谅上面的内容多么简单,但希望你能明白。

    【讨论】:

    • 知道了,这可能有效!让我实现此代码并在我开始工作后批准您的答案。谢谢有一个倾向它与.htaccess有关,但不确定。谢谢!
    • 这完全符合我的需要。我正在更改 php 代码以适应我的需要,但 htaccess 规则就像一个魅力,再次感谢!
    • @DEVPROCB 很高兴听到这个消息!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-14
    • 2023-01-08
    • 1970-01-01
    • 1970-01-01
    • 2012-09-13
    • 2021-11-07
    相关资源
    最近更新 更多