2016-01-05 3 views
0

Здравствуйте, я хочу перечислить на страницу категории, 6 категорий с количеством элементов для каждого.Список категорий с числом для каждого элемента

Моя таблица ..

стол: categorii

+--------+--------+--------+----------+--------+ 
| catid | name | title | url  | icon | 
+--------+--------+--------+----------+--------+ 
| 1 | Name | Name | urlname | 1.jpg | 
| 2 | Name | Name | urlname | 2.jpg | 
| 3 | Name | Name | urlname | 3.jpg | 
| 4 | Name | Name | urlname | 4.jpg | 
| 5 | Name | Name | urlname | 5.jpg | 
| 6 | Name | Name | urlname | 6.jpg | 
| 7 | Name | Name | urlname | 7.jpg | 
| 8 | Name | Name | urlname | 8.jpg | 
| 9 | Name | Name | urlname | 9.jpg | 
| 10 | Name | Name | urlname | 10.jpg | 
| 11 | Name | Name | urlname | 11.jpg | 
| 12 | Name | Name | urlname | 12.jpg | 
| 13 | Name | Name | urlname | 13.jpg | 
| 14 | Name | Name | urlname | 14.jpg | 
| 15 | Name | Name | urlname | 15.jpg | 
| 16 | Name | Name | urlname | 16.jpg | 
+--------+--------+--------+----------+--------+ 

стол: Jocuri

+---------+--------+----------+-----------+-----------+-----------+-----------+-----------+-----------+ 
| fileid | name | category | category2 | category3 | category4 | category5 | category6 | status + 
+---------+--------+----------+-----------+-----------+-----------+-----------+-----------+-----------+ 
| 1 | name |  1 | 9  |  0  |  0  |  0  |  0  |  1 | 
| 2 | name |  1 | 18  |  24 |  16 |  11 |  9  |  0 | 
| 3 | name |  2 | 11  |  9  |  13 |  0  |  0  |  0 | 
| 4 | name |  1 | 20  |  14 |  0  |  0  |  0  |  1 | 
| 5 | name |  6 | 8  |  16 |  22 |  10 |  18 |  1 | 
| 6 | name |  2 | 13  |  10 |  0  |  0  |  0  |  1 | 
| 7 | name |  1 | 14  |  9  |  8  |  0  |  0  |  0 | 
| 8 | name |  5 | 12  |  11 |  9  |  15 |  8  |  1 | 
| 9 | name |  1 | 9  |  8  |  11 |  13 |  10 |  1 | 
| 10 | name |  1 | 10  |  8  |  9  |  0  |  0  |  1 | 
| 11 | name |  1 | 8  |  9  |  12 |  10 |  16 |  1 | 
| 12 | name |  6 | 10  |  0  |  0  |  0  |  0  |  0 | 
+---------|--------+----------+-----------+-----------+-----------+-----------+-----------+-----------+ 

что является правильным команда (PHP и MySQL), чтобы перечислить на категория категорий, все категории со статусом 1, случайные и показывать количество файлов в каждой категории?

Большое спасибо!

+0

Добро пожаловать ** ** StackOverflow. Пожалуйста, прочитайте [* Как спросить *] (http://stackoverflow.com/help/how-to-ask). что ты уже испробовал? – Ben

+0

Что делает эта таблица jocuri действительно? для чего это? это таблица, связанная с jocuri? если да ... с помощью какого поля всех категорий ...? – jpganz18

+0

на столе jocuri перечислены элементы, а в строках категория, category2 и т. Д. - это категории из таблицы категорий –

ответ

1

Начните с изменения базы данных на 3 таблицы.

Категории

+--------+--------+--------+----------+--------+ 
| catid | name | title | url  | icon | 
+--------+--------+--------+----------+--------+ 
| 1 | Name | Name | urlname | 1.jpg | 
| 2 | Name | Name | urlname | 2.jpg | 
| 3 | Name | Name | urlname | 3.jpg | 
| 4 | Name | Name | urlname | 4.jpg | 
| 5 | Name | Name | urlname | 5.jpg | 
| 6 | Name | Name | urlname | 6.jpg | 
| 7 | Name | Name | urlname | 7.jpg | 
| 8 | Name | Name | urlname | 8.jpg | 
| 9 | Name | Name | urlname | 9.jpg | 
| 10 | Name | Name | urlname | 10.jpg | 
| 11 | Name | Name | urlname | 11.jpg | 
| 12 | Name | Name | urlname | 12.jpg | 
| 13 | Name | Name | urlname | 13.jpg | 
| 14 | Name | Name | urlname | 14.jpg | 
| 15 | Name | Name | urlname | 15.jpg | 
| 16 | Name | Name | urlname | 16.jpg | 
+--------+--------+--------+----------+--------+ 

FileIDs

+---------+--------+ 
| fileid | name | 
+---------+--------+ 
| 1 | name | 
| 2 | name | 
| 3 | name | 
| 4 | name | 
| 5 | name | 
| 6 | name | 
| 7 | name | 
| 8 | name | 
| 9 | name | 
| 10 | name | 
| 11 | name | 
| 12 | name | 
+---------|--------+ 

FileIDs_has_Categories

+---------+------------+ 
    | fileid | category | 
    +---------+------------+ 
    | 1 | 1  | 
    | 1 | 9  | 
    | 2 | 1  | 
    | 2 | 18  | 
    | 2 | 24  | 
    | 2 | 16  | 
    | 2 | 11  | 
    | 2 | 9  | 
    | 3 | 11  | 
    | 3 | 9  | 
    | 3 | 13  | 
    | 4 | 1  | 
    +---------|------------+ 

Тогда вы могли бы получить количество ваших категорий (количество файлов идентификатор, привязанный к этой категории) по

SELECT COUNT(fileid) FROM FileIDs_has_Categories where category = 1 

Какой бы вернуться, сколько файлов вы с категории 1

+0

Это правильный подход, упомянутый в комментариях к комментарию: +1 – Reloecc

+0

Действительно, но поскольку тематический блок, кажется, новичок, я решил написать его немного подробнее. – Lonefish

+0

ничего плохого в этом;) – Reloecc

Смежные вопросы