ホームページ  >  記事  >  バックエンド開発  >  PHP は SQL ステートメントのクエリ結果が空かどうかをどのように判断するのでしょうか?

PHP は SQL ステートメントのクエリ結果が空かどうかをどのように判断するのでしょうか?

WBOY
WBOYオリジナル
2016-06-23 14:03:241370ブラウズ

コードは次のとおりです:

$sql =mysql_query( "select * from tv_video where title like '%$keyword%' limit $offset,$PageSize");$result=mysql_fetch_array($sql);if(!empty($result)){while($result=mysql_fetch_array($sql)){echo "hello word!"}if(!empty($result)){echo "记录为空";}

テストの結果: レコードが空であるかどうかに関係なく、「hello word!」と「レコードが空です」が出力されます。つまり、両方の条件が true になります。 SQL の戻り結果が空かどうかを判断する方法は?


ディスカッションへの返信 (解決策)

$result =mysql_query( "select * from tv_video where title like '%$keyword%' limit $offset,$PageSize");if (mysql_num_rows($result) < 1) echo '记录集为空';

アドバイスありがとうございます。私は PHP を学習したばかりで、多くの関数についてあまり知りません。

すごいです


これを試してください

$result =mysql_query( "select * from tv_video where title like '%$keyword%' limit $offset,$PageSize");
if(!mysql_affected_rows()){
echo 'レコードはありません';
}

1 階のメソッドはテストされ、合格しました。3 階のメソッドはおそらく機能しません。カウント値を 1 に変更しても問題ありません。 4 階の mysql_affected_rows 関数は実際には表示されません。別の日にテストします。

説明
int mysql_affected_rows ([ resource $link_identifier ])
link_identifier に関連付けられた最新の INSERT、UPDATE、または DELETE クエリによって影響を受けるレコード行の数を取得します。

皆様、ありがとうございました。ご質問がございましたらお気軽にお尋ねください。 。

ありがとう、役に立ちます

役に立ちます、悪くないです、持ち帰って試してください

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。