0

我有一个网页,我想显示一些从数据库更新的项目,在这种情况下是 mysql。列表的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>

现在我有两个要在这种情况下使用的表,我分别尝试了它们,并且在 a) 我没有收到任何错误消息,但没有显示任何内容,在 b) 我收到一条错误消息,指出该表不存在。

除了我刚刚提供的代码之外,我不知道任何 mysql,因此很难确定原因可能是什么。将不胜感激一些提示。

4

2 回答 2

1

首先,不要使用mysql_*,而是使用mysqliPDO

至于您的问题,从第一个表中,您没有得到任何结果,因为表中可能没有数据。

在第二个表中,您会收到未找到表的错误,因为该表不存在,这意味着您的表名错误。

您可以使用SqlYog或 phpmyadmin等 GUI 客户端访问数据库吗?尝试在此工具中运行您的查询,看看您会得到什么。

于 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 回答