-2

私は本当に奇妙な問題を抱えています。私のコード:

 $sql = "SELECT emailIsConfirmed FROM userdatabase.user where username = '".mysqli_real_escape_string( $db, $username ) ."'";
    $result = mysqli_query($db, $sql);
    var_dump(mysqli_fetch_array($result)[0]);
    var_dump("1");
    if((mysqli_fetch_array($result)[0]) == "1")
    {
        return true;
    }
    return false;

動作しません。出力が次のようになっている場合でも:

string(1) "1" 
string(1) "1"

結果は偽です...なぜですか?

本当にばかげた間違いだと思います。ご協力いただきありがとうございます

4

2 に答える 2

2

mysqli_fetch_array2 回目に呼び出され、結果の 2 行目を取得しようとします。あなたの s にコメントするvar_dumpと、うまくいくはずです。

于 2013-10-03T09:29:04.357 に答える
0

結果は次のとおりです。

var_dump(mysqli_fetch_array($result)[0]);
var_dump("1");

つまり、それif((mysqli_fetch_array($result)[0]) == "1")は本当です。

データベースの結果をデバッグする場合を除き、呼び出しを削除var_dump()します

于 2013-10-03T09:34:00.943 に答える