これは私が考えている簡単なシナリオです。PHP から MySQL データベースで実行されるクエリがあります。クエリからデータが返されたかどうかを確認したいと思います。ただし、そのチェックを実行するために、返されたデータの行の 1 つを引き出します。
この例とそのコメントを見てください。
$booksGrabber = ("SELECT * FROM table");
if (!$booksGrabber) {
//Query failed, perhaps a syntax error
exit;
}
if (!mysql_result($booksGrabber, 0)) {
//No data was returned :(
exit;
}
while ($book = mysql_fetch_assoc($booksGrabber)) {
//mysql_result() stole the first row of returned data
//So if I was expecting the loop to display 4 results,
//I only get 3...
}
2 つのクエリ (1 つはチェック用、もう 1 つはすべてのデータを表示するため) を実行したり、行の 1 つを盗んだりせずに、データベースからデータが返されたかどうかを確認するにはどうすればよいですか?