是否在索引上显示页面?动作=


Display pages on index?action=

我想用CCD_ 1打开一个页面,我使用以下代码:

 $do='';
 if (isset($_GET['do'])){
    $do = strip_tags($_GET['action']);
 }
 if ($do == 'settings') {
    header("location:settings.php");
 }
if ($do == 'posts') {
        header("location:posts.php");
     }

但问题是,我在上面的操作中手动添加了所有菜单,使其工作,当它重定向我时,index.php?do=settings消失,只显示我不想要的settings.php

为了避免手动设置,您可以将页面存储在一个数组中,其中键作为页面名称,值作为文件,然后包括文件:

$pages = array(
    'settings' => 'settings.php',
    'otherpage' => 'somePage.php'
);
if (isset($pages[$do])) {
    include $pages[$do];
}

您应该包含该文件,因为URL更改的原因是重定向。

在类似中添加get-var

header("location: http://yoursite.com/settings.php?do=".$do);

注意:应该是完整的uri,而不是相对的

您可以使用http_build_query($_GET)为需要保存GET数据的链接生成查询字符串。

如果需要修改GET键,请将GET保存到一个临时数组中,对其进行修改并将其传递给http_build_query