SHOW TABLES仅显示以空格mysql开头的表

时间:2012-11-04 10:15:59

标签: php mysql sql

我有一些代码需要获取数据库中所有表的列表,其中某列等于某个事物。但是,使用SHOW TABLES MySQL代码只列出以空格开头的表。这是我的代码......

$result = mysql_query("SHOW FULL TABLES IN `db`") or die("Error: " . mysql_error());
while ($word = mysql_fetch_array($result)) {
    $word = $word[0];
    $sql = "SELECT * FROM `db`.`$word` WHERE col='$val'";
    $result = mysql_query($sql, $con) or die("Error: " . mysql_error());
    while ($col = mysql_fetch_array($result)) echo "<li><a nav='$word' title='View $word'>$word</a></li>";
}

出于某种原因,第一个mysql_query()只返回一个结果,恰好是一个以空格开头的表。 (这是唯一以整个空间开头的桌子) 编辑:我刚刚意识到我遗漏了将$ word从数组转换为字符串的代码行...现在就在那里。

1 个答案:

答案 0 :(得分:2)

你在循环中覆盖$ result(你的表列表)。

第一次迭代后,$ result将包含第一个表中的字段列表。