0

今日、ブログ用の CMS の構築を開始しましたが、phpMyAdmin を介して手動で挿入した 2 つのエントリをページに表示するのに問題がありました。これはデータベースの問題である可能性があり、コードの問題である可能性がありますが、何らかの理由で MySQL テーブルが空白のエントリで 1 回だけ繰り返されます。PHPは次のとおりです。

$link = mysql_connect('localhost', 'root','');
    if (!$link)
        die('<h3>Cound not connect to MySQL<h3><p><div>'.mysql_error()."</p></div>");
    mysql_select_db('blog_cms', $link);
    $posts = mysql_query("SELECT * FROM entries");
    if ($posts == null) die ("<h3>No blog posts found!</h3><div><p>Something went wrong.</p></div>");
    else
        while ($entry = mysql_fetch_row($posts)); {
            echo "<h3>".$entry[0]."</h3>";
            echo "<div>";
            echo "<p>".$entry[1]."</p>";
            echo "</div>";
        }

出力HTMLについては、単に取得しています

<h3></h3><div><p></p></div>

phpMyAdmin のスクリーンショット PMA スクリーンショット

これが単一の空白行のみを返すのはなぜですか?

4

1 に答える 1

1

余分なものがあります; そのため、次のブロックはこのループに関連付けられていません。

 while ($entry = mysql_fetch_row($posts));
                                         A

余分なものを削除する;と、正常に動作するはずです:) そして、mysql_* 関数は非推奨であることに注意してください。PDO または mysqli_* の使用を開始します。

于 2013-07-14T20:24:23.393 に答える