簡體   English   中英

簡單數據庫查詢的問題

[英]issues with simple database query

我有這個非常簡單的數據庫查詢問題。 開頭的if條件為真且有效。

問題來自內部的if / if / else。 第二條語句是當活動用戶具有某些連接但他正在訪問的個人資料不起作用時。 結果為“邀請您的船員”。

但是,如果第一個自然狀態為true,那么當活動用戶和配置文件所有者都沒有連接時,我的查詢將無法正常工作。 它將始終導致else語句(“ join crew”),僅當配置文件所有者具有至少一個連接($ countProfileCon!== 0)時才會發生,在這種情況下,活動的連接數無關緊要用戶擁有。

我不明白為什么。

    if ($countCurrent==0 && $countFormer==0) {


        $activeConnectionQuery = $DBcon->query("SELECT * FROM tbl_current_userconnections WHERE user_id=".$_SESSION['userSession']);
        $countActiveCon=$activeConnectionQuery->num_rows;

        $profileConnectionQuery = $DBcon->query("SELECT * FROM tbl_current_userconnections WHERE user_id=".$_GET['user']);
        $countProfileCon=$profileConnectionQuery->num_rows;



        if ($countActiveCon==0 && $countProfileCon==0) {
            $connect = "<p>create a crew</p>";
        }

        if ($countActiveCon!==0 && $countProfileCon==0) {
            $connect = "<p>invite to your crew</p>";
        } 

        else {
            $connect = "<p>join crew</p>";
        }
    }

發生問題時,tbl_current_userconnections如下所示:

user_id                 connection_id
----------------        ----------------

(很明顯是空的)

我認為您在第二種情況下缺少“ else”關鍵字。

if ($countActiveCon==0 && $countProfileCon==0) {
    $connect = "<p>create a crew</p>";
}

elseif ($countActiveCon!==0 && $countProfileCon==0) {
    $connect = "<p>invite to your crew</p>";
} 

else {
    $connect = "<p>join crew</p>";
}

您的第一個條件很好。 但是由於缺少elseif,它會覆蓋您的變量,因為第二個條件被評估為false。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM