PHP函数检查2个变量是否为空

时间:2010-08-19 17:38:07

标签: php post get

我有一个索引页面,我希望它包含一个名为splash.php的页面,而不是display.php,当用户登陆index.php时,但是一旦用户做某事(设置变量),即用户搜索(变量“查询”)我希望它包含display.php而不包括splash.php

此代码有什么问题?

function hasGet()
{
    return !empty($_GET['fact']);
    return !empty($_POST['query']);
}

if (hasGet()) {
    include("display.php");
}

else {
    include("splash.php");
}

应删除此问题

3 个答案:

答案 0 :(得分:5)

仅执行第一个return语句。尝试:

return !empty($_GET['fact']) && !empty($_POST['query']);

完成您要做的事情的更好方法是使用会话。

的index.php

<?php

session_start();

if (!isset($_SESSION['visited'])) {
    $_SESSION['visited'] = true;
    include 'splash.php';
} else {
    include 'display.php';
}

?>

这种方式在用户首次访问index.php后,$_SESSION['visited']设置为true,并且在访问期间不会显示启动页面。

答案 1 :(得分:2)

你正在做的事情不能有两个回报。尝试

return (!empty($_GET['fact']) && !empty($_GET['query']));

答案 2 :(得分:0)

你可能想试试这个......

if($_SERVER["SCRIPT_NAME"] == "/index.php"){
    include("splash.php");
}else{
    include("display.php");
}

2

if(!empty($_GET["fact"]) || !empty($_POST["query"])){
    include("display.php");
}else{
    include("splash.php");
}