0

以下のphpコードを使用して、MYSQLデータベース検索の結果をAJAXリクエストに送信します...

$query = $db->query("SELECT name FROM search WHERE qurl = '" . $queryString . "'");


if($query) {

    while ($result = $query ->fetch_object()) {             
           echo $result->name; 
    }
} else { echo 'no results found'; }

しかし、結果がなくても結果が見つからないというメッセージが表示されることはありませんtwo empty spaces。結果が出ない…

しかし、結果があればうまくいきます...

これら2つのスペースを削除する方法、または結果が見つからないというメッセージが表示されないのはなぜですか?

4

2 に答える 2

3
if ($query->num_rows > 0) {
  while ...
} else {
  echo 'no results found';
}

$db->query()falseクエリの実行中にエラーが発生した場合にのみ返されます。空の結果セットはエラーではありません。

于 2012-11-28T20:57:25.467 に答える
0

あなたが評価しているのは、ステートメントが有効かどうかです...それは有効であり、常にtrueを返します。返された結果を評価するには、 $query->num_rows を評価する必要があります

于 2012-11-28T20:57:15.683 に答える