if语句为NULL(PHP)

时间:2015-03-20 12:39:22

标签: php

我希望如果变量= null则将其设为1。 如果变量存在则什么也不做,不要再将它变为1。

我收到了这段代码:

if (isset($_POST["register"])) {
        if(!$l_NextPage){
        $l_NextPage = 1;
        echo "helaas" . "</br>";
        }
        if($l_NextPage == 1){
            echo "hoi";
            $l_NextPage = 2;
        }else if($l_NextPage == 2){
            echo "doei";
        }
}

只有代码不起作用我尝试了emptyisset$var == FALSE,但每次他将$ l_NextPage设为1.是否有任何解决方案我也尝试使用会话,但即使它没有& #39;工作!

我做错了什么?

3 个答案:

答案 0 :(得分:1)

刷新页面时会发生什么,每次都会分配$l_NextPage = 1,这就是为什么所有时间都打印hoi

您可以使用会话在页面刷新后保留变量值

试试这段代码

// write this line of code at top of php block
session_start();

if (isset($_POST["register"])) 
{
        if (!isset($_SESSION["l_NextPage"]))
        {
               $_SESSION["l_NextPage"] = 1;
              echo "helaas" . "</br>";
        }
        if($_SESSION["l_NextPage"] == 1)
        {
            echo "hoi";
            $_SESSION["l_NextPage"] = 2;
        }
        else if($_SESSION["l_NextPage"] == 2)
        {
            echo "doei";
            //unset( $_SESSION['l_NextPage'] );  unset varibale 
        }
}

达到前缀后,您可以使用

取消设置变量
unset( $_SESSION['l_NextPage'] );

我没有测试过代码,但这应该可行

答案 1 :(得分:0)

你应该尝试:

 if(!isset($l_NextPage)) {
    $l_NextPage = 1;
    echo "helaas" . "</br>";
    }
    elseif($l_NextPage == 1) {

(...)

答案 2 :(得分:-1)

尝试这样,

if(!empty(trim($l_NextPage)))