【问题标题】:Accessing PHP Pages URL?访问 PHP 页面 URL?
【发布时间】:2015-01-07 13:32:21
【问题描述】:

我最近在做一个 php 项目。我为我的网站创建了模板并设计了页面。但是,页面之间的导航是这样的:

http://localhost:81/x/y/index.php,当我想导航到另一个页面时,URL 将类似于:http://localhost:81/x/y/second.php

如何使以下 URL 将我带到 second.php 页面?

http://localhost:81/x/y/index.php?page=second

谢谢。

【问题讨论】:

  • 你需要一个框架。

标签: php url redirect


【解决方案1】:

除非我有什么误解,把它放在 index.php 页面的顶部:

<?php
if($_GET['page'] == "second")
{
    $newURL = 'http://localhost:81/x/y/second.php';
    header('Location: ' . $newURL);
}
?>

How to make a redirect in PHP?

【讨论】:

  • 如果我有 8 个页面并且您可以从任何页面访问它们怎么办。该解决方案将在每页中重复 8 次。我说的对吗?
  • 然后将代码放在一个库文件中,调用include()将其包含在每一页中,这样就不用重写8x了。
【解决方案2】:

我会添加更多内容以使其安全,但简单的答案是......

if(isset($_GET['page'])
{
    require '/path/to/folder/' . $_GET['page'] . '.php';
}

如果是你想要的重定向,你也可以这样做。

if(isset($_GET['page'])
{
    header('Location: ' . $_GET['page'] . '.php');
}

【讨论】:

  • 我知道通过使用 $_GET['page'] 您将获得第二名,然后将其与 php 连接起来。但我不明白在哪里使用此代码
  • 是的,这样您就不必为要访问的每个页面添加 if 块。您只需将代码插入 index.php 的顶部,或者最好将其作为 index.php 中的唯一代码
【解决方案3】:

试试这个规则:

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^x/y/index.php?page=(.*)$ http://localhost:81/x/y/$1.php [R=301,L]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 2019-06-29
    • 1970-01-01
    • 2016-11-22
    • 1970-01-01
    相关资源
    最近更新 更多