Кто-нибудь может мне помочь? потому что я не могу понять это.
скажем, у меня есть база данных с двумя таблицами, одна из которых является категорией, а другая - продуктом
category table
cat_id category_name
1 animals
2 fruits
3 vegetables
product table
pro_id category_id product_name
1 2 mango
2 3 beans
3 2 apple
4 1 cat
Я попытался выбрать cat id order by cat_id в таблице категорий, в то время как таблица cat зацикливается.... {Я попытался выбрать продукт в таблице продуктов, используя cat_id, в то время как таблица продуктов зацикливается.. {Я просто хочу поместить его в массив в хорошем формате}
}
пример результата
Array
(
[fruits] => Array
(
from cat_id --> [2] => Array
(
[pro_id] => 1
[name] => mango
)
from cat_id --> [2] => Array
( [id] => 3
[name] => apple
)
),
[vegetables] => Array
(
from cat_id --> [3] => Array
(
[pro_id] => 2
[name] => beans
)
),
[animals] => Array
(
from cat_id --> [1] => Array
(
[pro_id] => 4
[name] => cat
)
)
)
Сначала я должен получить категории и пропустить их, а затем получить продукты для каждой категории. Что-то вроде:
$result = Array();
$sql = "SELECT * FROM category ORDER BY category_name";
// db query here (however you are doing that)
foreach ($categories as $category)
{
$result[$category['category_name']] = Array();
$sql = "SELECT * FROM product WHERE category_id = $category[cat_id] ORDER BY product_name";
// db query here (however you are doing that)
foreach ($products as $product)
$result[$category['category_name']][$product['pro_id']] = $product['product_name'];
}
Это даст вам выход:
Array(
'fruits' => Array(
1 => 'mango',
3 => 'apple',
)
etc.
При необходимости отрегулируйте его, если вам нужно сохранить идентификатор категории и т.д.