3

私がやろうとしているのは、テーブルに値が存在するかどうかを確認することです。存在しない場合は、申し訳ありませんメッセージが表示されます。値が存在しても、コードは常に申し訳ありませんを返します

if ($mysqli->query("SELECT 1 FROM `users` WHERE `k1`='$string1' AND 'k2'='$string2'"))
    {

    if($mysqli->affected_rows==0)
    {
    printf("Sorry");
    }
    }
4

2 に答える 2

5

影響を受ける行の数ではなく、行の数を確認する必要があります。

if ($result->num_rows == 0)
{
    echo 'sorry';
}

affected_rows は、ステートメントによって影響を受けた行数を知りたい挿入、更新、および削除ステートメント用です。

num_rows は、select ステートメントによって返された行数を返します。

于 2012-12-10T14:01:01.533 に答える
1

使用する必要があります

 $result = $mysqli->query("SELECT 1 FROM `users` WHERE `k1`='$string1' AND 'k2'='$$string2'");
    if ($result = $mysqli->query("SELECT 1 FROM `users` WHERE `k1`='$string1' AND 'k2'='$$string2'"))
        {

        if($result->num_rows==0)
        {
        printf("Sorry");
        }
        }

SELECTステートメントとしてクエリを作成しているため。

于 2012-12-10T14:03:47.940 に答える