|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
||||||
Вывод категорий из бд списком в несколько столбцов с навигацией сверху30.11.2012, 23:00. Показов 3989. Ответов 25
Метки нет (Все метки)
Ребята помогите пожалуйста с решением непростой для меня задачки, а то у меня мозг уже на грани)
В общем хочу сделать у себя на сайте вывод категорий как на сайте см рис ниже На главной странице сверху должна выводиться главная родительская категория и ниже все категории, которые непосредственно к ней относятся в несколько столбцов например в 4 или 5. Причем главная родительская категория еще является первым элем навигации. Когда человек кликает по любой дочерней категории не зависимо от уровня вложенности сверху к главной родительской категории добавляются пункты меню см рис ниже. Таким образом мы всегда видим в какой категории находимся и можем перемещаться по каталогу одним кликом. очень удобно. см рис ниже И еще сделано очень интересно, что когда человек добирается до категории где уже товары слева выводятся все категории а справа товары, очень удобно перемещаться Я сделал таблицу категорий следующего вида: id parent_id category_name Вложение 207433 создал файл catalog.php который по клику на категорию передает себе значения category_id
не пойму как навигацию сверху сделать от главной категории к дочерним и запросов кажется много к базе происходит ИМХО Думаю эта тема многим интересна помогите пожалуйста разобраться кто чем может.
0
|
||||||
| 30.11.2012, 23:00 | |
|
Ответы с готовыми решениями:
25
Организовать вывод на форму поля со списком (ListBox) и заполнить несколько его строк. Вывод в несколько столбцов в TreeView |
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 01.12.2012, 12:47 [ТС] | |
|
Народ ну помогите чтоли, неужели никто не знает как эту штуку реализовать
0
|
|
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|
| 01.12.2012, 16:19 | |
|
структуру таблиц покажите из бд
Добавлено через 7 минут и get запросы при передвижении по категориям
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
||||||
| 01.12.2012, 17:20 [ТС] | ||||||
|
alpex
структура таблиц такая, выклыдываю таблицы категорий, товаров и связка товары и категории таблица categories таблица products таблица product_category Get параметр передается только один это переменная categori_id, которая соответствует полю id в таблице categories, в начале темы я как раз выложил код где указано как передается этот параметр
0
|
||||||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|
| 01.12.2012, 17:24 | |
|
это код который принимает а не передает, а в адресной строке что тоже 1 параметр идет?
просто мне кажется что с одним параметром такое количество переходов(структуру) никогда не сделаешь
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 01.12.2012, 17:39 [ТС] | |
|
когда пользователь нажимает на любую ссылку категорию в файл catalog.php передается get параметр category_id и на основе его посетитель попадает в соответствующую категорию
alpex, может подскажите какие еще параметры добавить чтобы задачку решить мою
0
|
|
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|
| 01.12.2012, 17:48 | |
|
сегодня ночью попробую сделать
у вас так идет ? категория - подкатегория - товар было бы неплохо еще если бы вы дамп базы этих таблиц сбросили
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 01.12.2012, 18:32 [ТС] | |
|
а как мне вам дамп базы сбросить)
Добавлено через 7 минут нет к сожалению все намного сложнее например chevrolet>chevrolet lacetti>Кузовные детали>Бампер передний>товары т.е. уже когда пользователь дошел до последней вложенной категории (бампер передний) слева в один столбец будут выводиться все категории относящиеся к Кузовные детали (Бампер передний,Дверь и т.д), а справа уже будут выводиться все товары относящиеся к категории Бампер передний. На фотке в начале теме я выложил скрины сайта образца (SMTAUTOтчкRU) Добавлено через 10 минут у меня тут мысли кстати вот в каком направлении или попробовать как то сделать чтобы имя категории с текущим id заносилось в массив и с каждым переходом посетителя вглубь в массив добавляются новые значения в виде ссылок. В итоге в массиве поидее когда посетитель уже смотрит товар находятся ссылки $a[ Автозапчасти][chevrolet][chevrolet lacetti] [Кузовные детали][Бампер передний], а сам конкретный товар в навигацию уже не должен попадать поэтому в массиве его нет. или другой вариант использовать parse_url query и запоминать каждый переход пользователя таким способом Даж не най)
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 01.12.2012, 18:42 [ТС] | |
|
alpex, я так понимаю вам нужна сама моя бд
autofavorit.rar
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
||||||
| 02.12.2012, 04:27 [ТС] | ||||||
|
вобщем всю ночь промучился вот что получилося:
как видите категории выводятся сверху нормально. Я решил еще немного доработать код и в нем же выводить снизу подкатегории. но выводятся почему то только первая попавшаяся запись, не доганяю почему. Вернее вардампом проверил в $data изначально почему то помещается несколько раз одна и та же подкатегория, хотя условие вроде, если я не ошибаюсь: выбрать из таблицы categories все категории parent_id которых равен текущему значению $category_id вот сам код:
И еще не знаю как реализовать, нужно чтобы когда посетитель добрался до последней вложенной категории в нашем случае "бампер передний" справа выводились все товары этой категории, т.е. наличие всех бамперов, как на картинке в самом начале темы. ну усе погреб спать)
0
|
||||||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
||||||
| 02.12.2012, 07:40 | ||||||
|
в той базе которую вы сбросили , помоему не хваттает еще одного уровня категорий, что бы было как на скринах в первом сообщении
вобщем я сделал вам скрипт который можно будет легко расширять и изменять в дальнейшем, и постарался как можно подробнее все описать прочтите все комментарии и измените, там где стоит отметка //TODO, данные на свои я изменил способ передачи get запроса теперь он будет включать в себя всю иерархию вложений категорий, за сччет чего уменьшились обращения к базе html и css уже как нибудь сами ,я там пытался что то подогнать но там все криво)) Также можно легко добавить любое количество вложений категорий я отметил в коментариях что и где нужно заменить вообщем вот скрипт если что то непонятно спрашивайте Кликните здесь для просмотра всего текста
ps не смотрите больше попова
1
|
||||||
| 02.12.2012, 14:00 | |
|
0
|
|
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|
| 02.12.2012, 14:05 | |
|
да дествительно, там ресурс
![]() хотя mysqli_connect возвращает обьект, я поэтому и написал так по памяти не проверяя а как вобще скрипт, так сказать с точки зрения профессионала?
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 02.12.2012, 16:48 [ТС] | |
|
alpex, спасибо за потраченное время сейчас посмотрю
Добавлено через 14 минут alpex, спасиб за проделанную работу, блин с этим кодом я доолго разбираться буду))) Кстати почему Попова не слушать
0
|
|
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|
| 02.12.2012, 16:55 | |
|
про попова очень много тем на форуме, через поиск поищте
а со скиптом там все просто, пока разберетесь как раз может новое что то узнаете если есть непонятные функции то здесь можно все прочитать ну работает так как нужно?
0
|
|
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
||||||
| 02.12.2012, 17:04 [ТС] | ||||||
|
alpex, да пока не знаю щас буду пробовать
я кстати тоже код ночью делал, выложил здесь а его почему то удалили Добавлено через 11 секунд щас покажу Добавлено через 1 минуту
0
|
||||||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
||
| 02.12.2012, 17:05 | ||
|
вы там в цикле к базе обращаетесь это нехорошо
0
|
||
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|||||||||||
| 02.12.2012, 18:30 [ТС] | |||||||||||
|
так то да, но там ведь ограничение стоит что только одну записьвытащить и остановиться
Добавлено через 1 минуту
Добавлено через 7 минут alpex, кстати да одного уровня категорий не хватало, я его потом добавил Добавлено через 58 минут alpex, ВСЕ РАБОТАЕТ ВСЕ КРУТО ВАМ РЕСПЕКТ Добавлено через 12 минут alpex, кстати работать стало как только я строчку закомментировал
Fatal error: Call to undefined function mb_substr() in X:\home\localhost\www\phpblog\parts.php on line 170
0
|
|||||||||||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
||
| 03.12.2012, 04:57 | ||
|
Добавлено через 44 секунды эта строчка обрезает последнюю стрелочку, попробуйте просто substr поставить
0
|
||
|
0 / 0 / 0
Регистрация: 30.11.2012
Сообщений: 19
|
|
| 03.12.2012, 08:32 [ТС] | |
|
нет версия PHP 5.2.4
Добавлено через 1 минуту а может проблема из за того возникла что я вложенность категорий увеличил
0
|
|
| 03.12.2012, 08:32 | |
|
Помогаю со студенческими работами здесь
20
SQL select вывод в столбец несколько столбцов Несколько моделей для формирования единого списка с постраничной навигацией Вывод последних тем в несколько столбцов на главной странице форума phpBB Прайс-лист, с многоуровневым списком категорий vba Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|