php if(isset($ _ GET ['something']))不起作用

时间:2017-06-11 17:59:09

标签: php isset

我尽力弄清楚如何根据index.php?ref=[link]重定向某人,搜索互联网......并且无法弄清楚,这是我的代码:

if(isset($_GET['ref'])){
    header("Location: /" . $_GET['ref']);
}else if(empty($_GET['ref'])){
    header('Location: /welcome/');
}else{
    header('Location: /welcome/');
}

即使else if中的值已设置,它也始终执行?ref。 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我的镜头 - isset确定变量是否已设置且不为NULL。因此,如果您的网址仅包含?ref(不是?ref=subpage),则会满足条件,但您将被重定向到header("Location: /" . NULL);

尝试使用!empty()代替isset()

BTW:始终在exit

之后添加header("Location: ...")