Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
В движке DLE реализованна система категорий\подкатегорий.
Каждый пост добавляет в столбик "category" несколько значений.
Как потом фильтруются посты по категориям, если в каждой ячейке по несколько данных?
Неактивен
Этот вопрос к mysql не имеет отношения.
База возвращает содержимое колонки "category" скрипту DLE, а уже он его обрабатывает и фильтрует посты по категориям. Как именно? Это надо смотреть скрипт.
Неактивен
vasya написал:
Этот вопрос к mysql не имеет отношения.
База возвращает содержимое колонки "category" скрипту DLE, а уже он его обрабатывает и фильтрует посты по категориям. Как именно? Это надо смотреть скрипт.
скрипт закодирован, я бы сразу посмотрел
Неактивен
Тогда откажитесь от DLE. С его количеством проблем, он не стоит того, чтобы быть
А вообще — имеет смысл вопросы по работе скриптов задавать авторам скриптов, в конце
концов, именно они пишут то, что не работает.
Неактивен
paulus написал:
Тогда откажитесь от DLE. С его количеством проблем, он не стоит того, чтобы быть
А вообще — имеет смысл вопросы по работе скриптов задавать авторам скриптов, в конце
концов, именно они пишут то, что не работает.
Да я им не пользуюсь, я просто вспомнил, что они категории записывают через запятую в каждую ячейку.
Записать-то не проблема, а вот потом, чтобы выбрать определённую категорию, как mysql должен отфильтровавыть только те, которые нужны.
В смысле, "SELECT * FROM table WHERE category=hljn" не найдёт ячейку "hljn, dfd, rht".
Неактивен
where category like '%hljn%'
Неактивен
а если есть 4 группы: hljn, hljnуа, dfd, rht
ячейка 1: hljn, dfd, rht
ячейка 2: hljnуа, dfd, rht
where category like '%hljn%' выдаст обе ячейки, хотя нужна только первая
Неактивен
Угу, способ хранения данных отвратительный Правильно хранить слова
в отдельной табличке и искать по ней. Если хочется правда написать костыль
над этим, то попробуйте добавить индекс FULLTEXT(category), тогда можно
будет делать WHERE MATCH (category) AGAINST ('hljn');
Неактивен
Страниц: 1