使用Get参数更改PHP站点

时间:2016-07-16 06:33:35

标签: php html get

所以我有这个非常奇怪的错误,我不知道它为什么会发生: 我有一个带有页眉和页脚的“index.php”,中间包含一个“Content.php”,它输出内容,具体取决于index.php所具有的Get参数:

if($_GET["site"]){
    switch($_GET["site"]){
        case 1:
            break;
        case 2:
                if($_GET['horses']){
                    include_once("horses.php?horse=".$_GET['horses']);
                } else{
                    include_once("horses.php");
                }
            break;
        case 3: include_once("contact.php");
            break;
        case 4:
                if($_GET['members']){
                    include_once("team.php?member=".$_GET['members']);
                } else{
                    include_once("team.php");
                }
            break;
        case 8: include_once("pressestimmen.php");
            break;
        default: include_once("home.php");
    }
} else{
    include_once("home.php");
}

在某些情况下(马匹和团队成员)会传递第二个Get-Parameter,该参数在相应的Content-file中处理。
这对马匹非常有效并且表现得如预期的那样,但出于某种原因,即使我复制了“team.php”中的代码(除了一些细节),当我传递Get参数时,根本没有显示任何内容。这本身并不会太令人惊讶,因为我可能在某处有一个错误,但即使我将team.php更改为:

<div class="margin-bottom-30">
</div>
<div class="tabs">
    <ul class="nav nav-tabs">

    </ul>
 </div>
 <div class='tab-content'>

</div>

当我调用“index.php?site = 4”时,它可以正常工作并显示空容器。但是当我调用“index.php?site = 4&amp; members = 1”时,内容完全是空的,我不明白这是怎么回事,因为html甚至不应该注意到get参数。
我试图解决这个问题好几个小时,我只是想不通Get-parameter如何影响team.php中的html代码

2 个答案:

答案 0 :(得分:2)

尝试像这样更改你的案例4块;

case 4:
    include_once("team.php");
    break;

然后在team.php脚本中,尝试从$ _GET获取members参数。

基本上,你在实现中所做的是告诉php寻找一个名为team.php?member=1的文件,而不是寻找team.php并传递member = 1参数。

由于磁盘上不存在文件team.php?member=1(或team.php?member=2,...),因此不会显示任何内容。

如果您需要有关页面上的错误,警告,...的详细信息(例如,为什么页面无法加载或php无法找到);在页面顶部添加这三行;

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

在这里查看更多信息; How do I get PHP errors to display?

答案 1 :(得分:1)

您不能包含此类文件

include_once("team.php?member=".$_GET['members']);

只需保留include_once("team.php");,即可设置$_GET['members']中的team.php值。