繁体   English   中英

在php,mysql中显示父类别页面上子类别的产品

[英]Display products of sub-categories on parent category page in php, mysql

我在父类别页面上获取产品时遇到问题。 我的数据库表结构:

父类:

id -catname 
1 - Mobiles & Tablets
2 - Compuetrs

子类别:

id cid sub_name
1   1   Mobiles
2   1  Tablets
3   2  Desktops
4   2  Laptops

产品表结构:我的产品表是多个并基于子类别。 示例:平板电脑产品位于平板电脑桌下,手机产品位于手机平台下。 产品根据其子类别存储在不同的表中。

id  cid  sub_id product_name
1   1      1     Lenovo latest mobile
2   2      3     Dell Monitor

现在我想从父类别页面上的表格(手机,平板电脑,台式机,笔记本电脑)中获取产品。 我尝试使用union,但是一次只有一个表在查询中获取。 谁能提出一些建议。 提前致谢。

<?php  
if(isset($_GET)) {
    $cid = $_GET['id'];     
    if($cid == 1){ 
        $tablename = "mobiles"; 
    }
    if($cid == 2){ 
        $tablename = "computers"; 
    }
    $results=mysql_query("SELECT * FROM $tablename WHERE cid = '$cid'");
    while($rows=mysql_fetch_array($results)){
        // code 
    }
}

循环查询降低了性能,您始终可以通过仅查询数据库一次来连接表并获取数据,

尝试,

SELECT products.product_name, parent_category.catname
FROM products
JOIN parent_category ON products.cid = parent_category.id

连接也适用于多个表,假设您想要获得类别和子类别,

尝试,

SELECT products.product_name, parent_category.catname, sub_category.sub_name
FROM products
JOIN parent_category ON products.cid = parent_category.id
JOIN sub_category ON products.sub_id = sub_category.id

关于加入的更多信息: 这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM