mysqli を使用したクエリでは 1 つのリンクしか表示されませんが、元の mysql クエリでは 6 つすべてが表示されます。なぜこれが起こるのでしょうか?リンクの表示に関するクエリには、2 つのパラメーターが記載されています。1 つは、有効な値が 1 でなければならないことです。2 つ目は、管理ページのアクセス許可の値が 3 以下であることです。これは、管理ページで問題が発生しなかった私の古いクエリです: 古い Mysql クエリ
<?php
$result=mysql_query("SELECT * FROM navigation WHERE enabled='1' AND permission<='3'");
while ($row=
mysql_fetch_array($result))
{
echo '<li>';
echo $row['link'];
echo '</li>';
}
?>
変数に一致するすべてのリンクが表示されました。私の新しいMysqliクエリ:
$db = new mysqli($host, $user, $pass, $dbname);
if(mysqli_connect_errno())
{
die('The connection to the database could not be established.');
}
$query = 'SELECT * FROM navigation where enabled="1"';
$result = $db->query($query);
$total_results = $result->num_rows;
while ($row = $result->fetch_object());
{
echo '<li>';
echo $row->link;
echo '</li>';
}
?>
このクエリは、最初のリンクのみを表示します。