0

この場合はmysqlであるデータベースから更新されたいくつかのアイテムを表示したいWebページがあります。リストのhtml

<div id="right-column-sidebar-two">
<h3 id="header">Most</h3>
<ol>
<li><a href="#">R</a></li>
<li><a href="#">Q</a></li>
<li><a href="#">P</a></li>
<li><a href="#">O</a></li>
<li><a href="#">N</a></li>
<li><a href="#">M</a></li>
<li><a href="#">L</a></li>
<li><a href="#">K</a></li>
<li><a href="#">J</a></li>
<li><a href="#">I</a></li>
</ol>
</div>

これらのリスト項目はデータベースに保存されており、結合されたmysql/php/htmlは次のようになります

<div id="right-column-sidebar">
<ol>
<?php
$link = mysql_connect("host", "user", "password");
mysql_select_db("db", $link);
$query = "SELECT * FROM `table_name` LIMIT 0, 30 ";
$result = mysql_query($query) or die (mysql_error());
while ($row = mysql_fetch_array($result)):
?><li><a href="#"> <?php echo $row['title']; ?></a></li>
<?php endwhile;
?>
</ol>
</div>

この場合に使用したいテーブルが 2 つあります。両方を別々に試してみましたが、a) エラー メッセージは表示されませんが、何も表示されず、b) テーブルが存在しないというエラー メッセージが表示されます。

先ほど提供したコード以外に mysql を知らないので、原因が何であるかを判断するのは困難です。いくつかのヒントをいただければ幸いです。

4

2 に答える 2

1

まず、 を使用せずmysql_*、代わりにmysqliまたはPDOを使用してください。

あなたの問題に関しては、おそらくテーブルにデータがないため、最初のテーブルから結果が得られません。

2 番目のテーブルでは、テーブルが存在しないため、テーブルが見つからないというエラーが発生します。これは、テーブル名が間違っていることを意味します。

SqlYogや phpmyadminなどの GUI クライアントで DB にアクセスできますか? このツールでクエリを実行して、結果を確認してください。

于 2012-08-07T11:21:40.897 に答える
0

phpMyAdmin がローカル データベースのテーブルを認識しなくなった場合、それはパーミッションが /var/lib/mysql の下の任意のデータベース ディレクトリの mysql.mysql からたとえば root.root に変更されたためです (ほとんどの場合)。このクエリを使用して所有者を変更します。

chown -R mysql.mysql /var/lib/mysql/*

http://www.geckoandfly.com/7481/solution-for-no-tables-found-in-database-mysql-error-in-phpmyadmin/によるチュートリアル

于 2014-05-26T18:13:32.563 に答える