0

编写了一个脚本来打印数据库中存在的所有表的内容......但不幸的是我在某个地方出错了。谁能告诉我错误在哪里?

$sql = "SHOW TABLES FROM $dbName";
$result = mysql_query($sql);

if (!$result) {
    echo "DB Error, could not list tables\n";
    echo 'MySQL Error: ' . mysql_error();
    exit;
}

for ($i=1; $i<=5; $i++)
  {

while ($row = mysql_fetch_row($result)) 
{
echo "Table: {$row[0]}\n";
$sql_1 = "SELECT * FROM {$row[0]}";
$result_1 = mysql_query($sql_1);
$row_1 = mysql_fetch_row($result);
echo "$row_1";
}
}

mysql_free_result($result);

?> 

谢谢..

4

1 回答 1

0

首先,你不需要

for ($i=1; $i<=5; $i++)

此外, $row_1 是一个数组,所以要打印它使用类似

print_r($row_1);

而且可能不是表中唯一的行,所以使用像这样的构造

while ($row = mysql_fetch_row($result)) 
{
echo "Table: {$row[0]}\n";
$sql_1 = "SELECT * FROM {$row[0]}";
$result_1 = mysql_query($sql_1);
while ($row_1 = mysql_fetch_row($result_1/*There was also an error*/)) 
   print_r($row_1); /*Print_r or other function to print an array*/
}
于 2012-06-29T09:52:34.477 回答