PHP函数 - 比较错误

时间:2014-10-14 21:09:20

标签: php

尝试运行以下代码时出错。你能帮我解决这个问题吗?

   if((invite_limit($id_usr) >= 2)||(pending_users() == ' ')){ 

         echo '<div class="new_ativa_off">';
         echo '<div class="new_qtd">0</div>';

         echo '<div class="new_txt">Pending</div>';
         echo '</div>';

   }else{

         echo '<div class="new_ativa" id="nu_open">';
         echo '<div class="new_qtd">';
         if($inactive_users >= 2){echo '2';}else{echo $inactive_users;}
         echo '</div>';

         echo '<div class="new_txt">Pending</div>';
         echo '</div>';
   }

**这是待定用户功能&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &GT;&GT;&GT;&GT;&GT;&GT; 这是待定用户功能&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; &GT;&GT;&GT;&GT;&GT; **

    function pending_users(){

    include('_config.php');

    if ($stmt = $conex->prepare("SELECT * FROM $tb_user WHERE $user_adate  !=? AND $user_ref =?")) {


                        $stmt->bind_param("ss", $nada, $nada);

                        $nada = '';

                        $stmt->execute();

                        $stmt->store_result();
                        $inactive_users = $stmt->num_rows;

                        $stmt->close();

                        echo $inactive_users;

                        $conex->close();
                    }

}

**邀请限制功能&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; ;&GT;&GT;&GT;&GT; 邀请限制功能&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; ;&GT;&GT;&GT; **

    function invite_limit($id_usr){ 


            include('_config.php');
            if ($stmt = $conex->prepare("SELECT * FROM $tb_user WHERE $user_ref =? AND DATE($user_refdate) > DATE_SUB(NOW(), INTERVAL 24 HOUR) AND DATE($user_refdate) <= NOW()")) {

                            $stmt->bind_param("s", $id_usr);

                            $stmt->execute();

                            $stmt->store_result();
                            $activations = $stmt->num_rows;

                            $stmt->close();

                            echo $activations;
                        }

            $conex->close();

    }

1 个答案:

答案 0 :(得分:0)

好的,因为你正在回应你的功能而不是回归。 记住,甚至在比较中调用函数实际上会按照告诉的方式运行函数。在这种情况下,它会回应并使比较无效。

试试这个:

function pending_users(){

    include('_config.php');
    if ($stmt = $conex->prepare("SELECT * FROM $tb_user WHERE $user_adate  !=? AND $user_ref =?")) {

        $stmt->bind_param("ss", $nada, $nada);

        $nada = '';

        $stmt->execute();

        $stmt->store_result();
        $inactive_users = $stmt->num_rows;

        $stmt->close();
        $conex->close();
        return $inactive_users;

    }
}
function invite_limit($id_usr){ 

    include('_config.php');
    if ($stmt = $conex->prepare("SELECT * FROM $tb_user WHERE $user_ref =? AND DATE($user_refdate) > DATE_SUB(NOW(), INTERVAL 24 HOUR) AND DATE($user_refdate) <= NOW()")) {

        $stmt->bind_param("s", $id_usr);

        $stmt->execute();

        $stmt->store_result();
        $activations = $stmt->num_rows;

        $stmt->close();
        $conex->close();
        return $activations;
    }
}

此外,请在返回前关闭您的连接。一旦你返回一个函数,它就不再处理该行了。