PHP函数不在本地服务器上时不工作

PHP函数不在本地服务器上时不工作,php,variables,if-statement,get,Php,Variables,If Statement,Get,我试图使用if语句查找变量(使用GET)是否存在,但我无法让它们在我的web服务器上工作,但我的本地服务器工作正常 在我的PHP中有如下if语句: if(isset($_GET['typeQ']) && $_GET['typeQ'] == 4 && isset($_GET['searchQ'])){ header("Location: schoolEdit.php?schoolid=".$_GET['searchQ'].""); } els

我试图使用if语句查找变量(使用GET)是否存在,但我无法让它们在我的web服务器上工作,但我的本地服务器工作正常

在我的PHP中有如下if语句:

if(isset($_GET['typeQ']) && $_GET['typeQ'] == 4 && isset($_GET['searchQ'])){
        header("Location: schoolEdit.php?schoolid=".$_GET['searchQ']."");
    } else if(isset($_GET['typeQ']) && $_GET['typeQ'] == 5 && isset($_GET['searchQ'])){
        header("Location: vehicleEdit.php?vehicleid=".$_GET['searchQ']."");
    } else if(isset($_GET['typeQ']) && $_GET['typeQ'] == 6 && isset($_GET['searchQ'])){
        header("Location: driverEdit.php?driverid=".$_GET['searchQ']."");
    } else if(isset($_GET['typeQ']) && $_GET['typeQ'] == 3 && isset($_GET['searchQ'])){
        header("Location: studentEdit.php?studentid=".$_GET['searchQ']."");
    }
当我在本地服务器上转到此URL时(http://localhost/voyageur/index2.php?searchQ=1&typeQ=6),它看到“typeQ”被设置为6,“searchQ”被设置为某物并运行头代码。但是在我的web服务器上,它没有使用相同类型的URL运行任何这些,它只是跳过它们,就好像没有设置它们一样

我是否需要在我的web服务器上配置一些东西,以使其像在本地工作一样正常工作?

尝试更改

标题(“Location:schoolEdit.php?schoolid=“.$\u GET['searchQ']”)

标题(“Location:schoolEdit.php?schoolid=“.$\u GET['searchQ'])


服务器上的header函数可能错误地读取了header insert,因为您没有将任何内容连接到header的末尾。希望这能解决你的问题。这是我唯一能找到的东西。除此之外,它看起来还不错。

应该想到这一点,但我通过在代码中将if语句向上移动来实现这一点。还是很奇怪,我怎么没有收到“headers ready sent”错误之类的东西


谢谢大家的帮助:)

在脚本的开头,执行
如果
分支,它是否不输入任何
,或者它是否输入分支但不执行重定向?它不会输入任何值,无论这些值是什么。它只是跳过了它们。没有错误,而且它确实看到了带有print\r($\u GET)的两个变量。您如何测试它是否进入分支?您是否尝试用
打印
替换重定向?另外,您可以尝试打印每个计算的结果。实际上我没有想到(这是一个漫长的夜晚),它看起来好像进入了分支,但没有运行header()代码。不,没有修复它。很好的发现,但不知道为什么这些空引号在那里放在首位。哈!刚刚看到你的修复。我只是在想那件事!出于好奇,您以前使用的代码返回了什么?