如果语句没有执行,但是ifif和else

时间:2013-01-22 19:34:53

标签: php sql if-statement

所以,我在这个问题上摸不着头脑。我的原始“IF”语句在true时不执行(我知道它是真的,因为我已经回显了变量,它应该触发代码)。但是,如果IF语句不正确,则elseif和else语句可以正常工作。这是代码:

    <?php
    $count=mysql_num_rows($result);
    // have also tried only one "=" sign//
    if ($count==0){
        //This is not appearing//
        echo "Your search did not yield any results. Please try another search."; 
    } else if ( //other conditions// ) {
        //code that is working fine//
    } else {
        // more code that is working fine 
        // (happens to be the same as the original if statement)
    }
    echo $count; //is printing 0 correctly, but the if statement for $count=0 not happening//
    ?>

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

首先,我建议切换到mysqli,不要使用已弃用的mysql系列命令。

但是,在回答您的问题时,您应该检查您的SQL语句。 mysql_num_rows在成功时返回行计数,在失败时返回false。整数值false为0.

答案 1 :(得分:0)

好的,有一个人在工作时看着它,他发现了错误。这是我没有报告的事情,因为我认为它不会产生影响。我在原始if之前有一个while语句,但我不需要它执行,除非if是假的。当我将它移动到原始if以下并将elseif更改为另一个ifif语句中的括号时,它工作正常。