Php 基于数据库内容生成产品列表

Php 基于数据库内容生成产品列表,php,mysql,list,nested-loops,Php,Mysql,List,Nested Loops,我已经为每个产品系列创建了一个包含一个表的数据库,基本上我试图列出每个表中所有不同的模型表行,第一行是表名。为什么这不起作用 $result = mysql_query("SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('id') AND TABLE_SCHEMA=

我已经为每个产品系列创建了一个包含一个表的数据库,基本上我试图列出每个表中所有不同的模型表行,第一行是表名。为什么这不起作用

    $result = mysql_query("SELECT DISTINCT TABLE_NAME FROM 
                           INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME 
                           IN ('id') AND TABLE_SCHEMA='products-ropox'");
    while($row = mysql_fetch_array($result))
    {
        $serie = $row["TABLE_NAME"];
        echo "<ul>";
        echo "<li class='ldd_heading'><a class='link'
              href='products.php?category=".$serie."'>"
              .ucfirst($serie)."</a></li>";
        $query = mysql_query("SELECT DISTINCT model FROM $serie 
                              ORDER by model ASC");
        while($row = mysql_fetch_array($query))
        {
            echo "<li><a href='products.php?category=".$serie.
            "&model=".$row['model']."'>".$row['model']."</a></li>";
        }
        echo "</ul>";
    }
第一个循环运行良好,但第二个查询生成错误

重命名第二个$行,需要mysql\u fetch\u assoc而不是mysql\u fetch\u数组。如果要使用mysql\u fetch\u数组,则需要使用$row[0]


另外,一个好的做法是在查询后粘贴一个或多个错误,以便在查询中存在错误时输出错误。

第二个查询。。。警告:mysql\u fetch\u数组期望参数1是资源。您正在第二个循环中覆盖$row。请停止使用mysql\u查询。它已被弃用。使用mysqli_查询或PDO。如果我只是将mysql\u查询更改为mysqli\u查询,那么它根本不起作用。。。至少在没有任何改变之前,它起了一点作用。我重新编写了您的代码,并将“mysql\u fetch\u array”更改为“mysql\u fetch\u assoc”。mysql\u fetch\u assoc希望参数1是资源。有趣的是,如果我在phpmyadmin的SQL部分键入查询,它会像一个符咒一样工作……尝试回显$query。由于$serie没有被设置为任何值,所以它可能有一个错误。我讨厌发生这种事,phpmyadmin很好,页面被破坏了,greeeeat!出于某种原因,它甚至没有被设置$query=mysql\u query根据模型ASC从$serie订单中选择不同的模型;回声。$query.-啊;这只是回音!试图在查询行末尾添加一个或多个非sat。它没有定义$query,而是死了..经过一点修改,当我回显查询本身时,我必须对id进行资源分配。。。
$result = mysql_query("SELECT DISTINCT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME IN ('id') AND TABLE_SCHEMA='products-ropox'");
while($row = mysql_fetch_array($result))
{
    $serie = $row["TABLE_NAME"];
    echo "<ul>";
        echo "<li class='ldd_heading'><a class='link' href='products.php?category=".$serie."'>".ucfirst($serie)."</a></li>";
            $query = mysql_query("SELECT DISTINCT model FROM $serie ORDER by model ASC");
            while($row2 = mysql_fetch_array($query))
            {
                echo "<li><a href='products.php?category=".$serie."&model=".$row2['model']."'>".$row2['model']."</a></li>";
            }
    echo "</ul>";
}