Php 如何显示类别[数据分组]下的产品
我是php mysql新手。有人能在下面的问题上帮忙吗?如果是的话,请解释一下,这样我就可以学习了。提前谢谢Php 如何显示类别[数据分组]下的产品,php,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=
$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";
}
}
$data=mysql\u查询(“选择tbl\u类别。*,tbl\u产品。*从tbl\u类别左侧加入tbl\u类别上的tbl\u产品。cat\u id=tbl\u产品。cat\u id按tbl\u类别排序。cat\u id”);
$color=“1”;
而($fetch=mysql\u fetch\u数组($data,mysql\u ASSOC)){
如果($fetch['cat_name']!=$category){//,则返回错误:“注意:未定义的变量:第[行号]行上的/../filename.php中的category”
$catdes=$fetch['pd_description'];
echo“
.”$fetch['cat_name']。”
“$catdes.”;
$category=$fetch['cat_name'];
}
$item=$fetch['pd_name'];
$desc=$fetch['pd_description'];
$price=$fetch['pd_price'];
如果($color==1){
回声“;
回声“;
回显$item。“
”;
echo$desc;
回声“;
回声$price.“;
$color=“2”;
}
否则{
回声“;
回声“;
回显$item。“
”;
echo$desc;
回声“;
回声$price.“;
$color=“1”;
}
}
您收到的通知是在使用变量之前未声明变量的结果。最好在使用变量之前声明变量
在您的情况下,您需要先声明$category
,然后再将值与之进行比较:
$category = '';
if($fetch['cat_name'] != $category){
谢谢你的回复。我实际上试图按照你说的那样定义变量。错误得到了解决,但我想要的输出没有显示出来。我想看看类别已经显示了一次,并且该类别下的所有项目都列在该类别下;类似于-
笔记本电脑
索尼-型号-价格
戴尔-型号-价格等。但是如果我定义变量它没有显示所需的输出,但它确实显示了错误。请再次查看代码。谢谢并致以亲切的问候。