さて、私はこのコードを持っています:
if (isset($_GET['book'])) {
$query= "SELECT book_id, title, authors.`author` , publishers.`publisher` , formats.`format` , genres.`genre` , usersdb.users.username, pages, isbn, description, DATE_FORMAT( books.`release_date` , '%M, %d, %Y' ) AS `release_date`
FROM books
INNER JOIN `authors` ON ( `authors`.`author_id` = `books`.`author_id` )
INNER JOIN `publishers` ON ( `publishers`.`publisher_id` = `books`.`publisher_id` )
INNER JOIN `formats` ON ( `formats`.`format_id` = `books`.`format_id` )
INNER JOIN `genres` ON ( `genres`.`genre_id` = `books`.`genre_id` )
INNER JOIN usersdb.users ON ( usersdb.users.user_id = bookdb.books.user_id )
WHERE books.book_id= ".$_GET['book']."";
$query=@mysql_query ($query, $dbc1);
if ($query) {
var_dump ($query);
while($row=mysql_fetch_assoc($query)){
echo '<h1>'.$row['title'].'</h1>
<p>'.$row['author'].'</p>
<p>'.$row['publisher'].'</p>
<p>'.$row['format'].'</p>
<p>'.$row['genre'].'</p>
<p>'.$row['pages'].'</p>
<p>'.$row['isbn'].'</p>
<p>'.$row['release_date'].'</p>
<p>'.$row['description'].'</p>
<p>'.$row['username'].'</p>';
}
}
}
一部のエントリではまったく問題なく機能し、すべての情報が正しく表示されて問題ありませんが、新しいエントリでは、何らかの理由で情報がまったく表示されません。
mysql クエリは正しく実行されます。ご覧のとおり、var_dump() をresource(11, mysql result)
実行したところ、リソースが確実にそこにあるため、while ステートメントを実行していないようです。
なぜこれが起こっているのかがわかれば、それは大歓迎です。