0

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>';
            }
?>

このクエリは、最初のリンクのみを表示します。

4

1 に答える 1

0

だから、これは一種の答えです。それは私の最初の問題を解決し、新しい問題を与えてくれます。

  <?php
$server = "****";
    $user = "****";
    $pass = "*****";
    $webdb = "****";
    $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>';
                }

                            $result->free();

?>

有効に設定されているすべてのリンクを表示したコードです。私の <=3 変数は、クエリに追加された場合、リンクを表示せず、Web ページの残りの部分は現在表示されていません。さらに情報が見つかり次第更新します。

于 2012-10-13T20:43:35.060 に答える