1

メインカテゴリ - >サブカテゴリ - >サブサブカテゴリのように3つのレベルにカテゴリを配置したWebサイトを作成しました

そして、このカテゴリは、各製品がそのカテゴリに入るリストから選択したカテゴリを製品に追加するために使用しました。今、私は自分のサイトに賢明な製品カテゴリを表示しようとしていますが、すべてのカテゴリとサブカテゴリを表示するリストボタンを配置しました。問題は、メインカテゴリをクリックしようとすると、該当する製品のみが表示されることです。そのカテゴリを選択していますが、メインカテゴリがクリックされた場合にもサブカテゴリを表示したい場合、クエリは次のとおりです。

SELECT * FROM `products` WHERE `product_category`='$_REQUEST[cat]' ORDER BY `product_id` DESC

このクエリでは、リクエスト cat は、ページで取得したカテゴリの名前です。

メインカテゴリーをクリックするとサブカテゴリーも表示されるクエリが知りたい

4

2 に答える 2

0
SELECT product_category, (SELECT category_name FROM category WHERE c_id = products.c_id) AS Category, 
(SELECT sub_category_name FROM sub_category  WHERE sub_cat_id = products.sub_cat_id) AS        'Sub Category'
(SELECT sub_sub_category_name FROM sub_sub_category  WHERE sub_sub_cat_id = products.sub_sub_cat_id) AS        'Sub sub Category'
FROM `products` WHERE product_category='1'


store your sub categories and sub sub categories in other tables and in product table just     store their id's and then utilize the above query for the product with cate name and sub name 
and for sub categories of your relevant category you can select from sub cate table 
 SELECT * FROM  subcategory where category_id='$_REQUEST[cat]'
于 2012-04-24T07:51:06.613 に答える
0

メインカテゴリがクリックされたときのproduct_categoryような関係があると仮定すると、その子も検索する必要がありますparent_categoryid=1

あなたがしたように:

メインカテゴリー

SELECT * FROM `products` WHERE `product_category`='$_REQUEST[cat]' ORDER BY `product_id` DESC

サブカテゴリ

SELECT * FROM `products` WHERE `category_parent`='$_REQUEST[cat]' ORDER BY `product_id` DESC

$_REQUEST['cat']また、脆弱であり、悪用される可能性があることにも注意してください。あなたは使用する必要がありmysql_real_escape_string()ます(int) ($_REQUEST['cat'])

于 2012-04-24T07:47:44.057 に答える