如何在[数据分组]类别下显示产品

时间:2011-04-26 15:47:25

标签: php

我是php-mysql的新手。有人可以帮助解决下面这个问题吗?如果是这样,请解释一下,以便我可以学习。提前谢谢。

$data=mysql_query("SELECT tbl_category.*, tbl_product.* FROM tbl_category LEFT JOIN tbl_product ON tbl_category.cat_id=tbl_product.cat_id ORDER BY tbl_category.cat_id");
$color="1";
while($fetch=mysql_fetch_array($data, MYSQL_ASSOC)){ 

if($fetch['cat_name'] != $category){  //this returns error: "Notice: Undefined variable: category in /.../filename.php on line [this line number]
    $catdes = $fetch['pd_description'];
    echo "<tr bgcolor='#A9F5F2'><td colspan=\"2\"><div align=\"center\"><br/><b>". $fetch['cat_name']."</b><br /><span class=\"itemdescription\">". $catdes."</div></div></td></tr>";
    $category = $fetch['cat_name'];
}

    $item = $fetch['pd_name']; 
    $desc = $fetch['pd_description'];
    $price = $fetch['pd_price'];
    if($color==1){
        echo "<tr bgcolor='#FFFFFF'>";
        echo "<td width=\"93%\"><div align=\"left\">";
        echo $item . "<br /><span class=\"itemdescription\">";
        echo $desc ;
        echo "</div></td><td width=\"7%\" VALIGN=\"top\" ALIGN=\"right\"><div align=\"right\">"; 
        echo $price ."</div></td><tr>";
    $color="2";
    }
    else{
        echo "<tr bgcolor='#F2F2F2'>";
        echo "<td width=\"93%\"><div align=\"left\">";
        echo $item . "<br /><span class=\"itemdescription\">";
        echo $desc ;
        echo "</div></td><td width=\"7%\" VALIGN=\"top\" ALIGN=\"right\"><div align=\"right\">"; 
        echo $price ."</div></td><tr>";
    $color="1";
    }
}

1 个答案:

答案 0 :(得分:0)

您收到的通知是在使用变量之前未声明变量的结果。在使用变量之前声明变量始终是一种好习惯。

在您的情况下,您需要在比较值之前声明$category

$category = '';
if($fetch['cat_name'] != $category){