ФорумПрограммированиеPHP для идиотов → URL для шопа

URL для шопа

  • kolobok

    Сообщения: 48 Репутация: N Группа: Кто попало

    Spritz Дек. 3, 2013, 2:58 п.п.

    Что то не могу разобраться с url для магазина. В БД есть таблицы category и product. Категории связаны как обычно через parent_id. А вот как быть с url: допустим может быть строка вида:
    моймагаз.ру/about
    или
    моймагаз.ру/tools/drel/wood/bosh220
    Как понять что в первом варианте about это категория/раздел, и текст надо искать в таблице категория, а во втором, что bosh220 это продукт? URL у меня парсится в Index.php, через $_SERVER['REQUEST_URI']. Пока вариант взять последний элемент url массива и поискать его в таблице категории, и если не найдено то искать уже в продуктах. Или сделать еще таблицу url с метками category|product? Какой вобще отработанный метод/алгоритм используется в шопах?
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz Дек. 3, 2013, 3:04 п.п., спустя 5 минут 43 секунды

    для начала — http://blgo.ru/blog/2009/02/27/url/
    все умрут, а я изумруд
  • kolobok

    Сообщения: 48 Репутация: N Группа: Кто попало

    Spritz Дек. 4, 2013, 1:30 п.п., спустя 22 часа 26 минут 11 секунд

    Да я вобщем то так и делаю, я написал выше: "URL у меня парсится в Index.php, через $_SERVER['REQUEST_URI']". У меня наверное вопрос общий, как правильно организуются таблицы в шопе и их взаимосвязь с url. Просто как лично мне кажется, для товаров должна быть отдельная таблица в отличии от других страниц/разделов/категорий продуктов, так как их может быть очень много. И вопрос как по url понять что нам надо искать инфу например в таблице разделов, либо нам надо выдергивать данные из таблицы продуктов. Должна быть какая то общая таблица с URL? Или как?
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz Дек. 4, 2013, 1:55 п.п., спустя 24 минуты 59 секунд

    ну, если брать последний элемент массива - то смысл тогда во всех предыдущих?
    ведь URL моймагаз.ру/tools/drel/wood/bosh220
    сводится к банальному моймагаз.ру/bosh220

    я бы хранил весь url, вытаскивать такое можно по хешу урла, сделать его уникальным ключом
    все умрут, а я изумруд
  • kolobok

    Сообщения: 48 Репутация: N Группа: Кто попало

    Spritz Дек. 4, 2013, 2:47 п.п., спустя 51 минуту 43 секунды

    >>сводится к банальному моймагаз.ру/bosh220
    Это самое простое, но есть SEO и юзабилити, поэтому /tools/drel/wood/bosh220 и понятнее и привлекательнее. На счет последнего эл-ма массива это просто пример был, думаю что наверное все-таки отдельная таблица с url-ами нужна.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz Дек. 21, 2013, 11:20 д.п., спустя 16 дней 20 часов 32 минуты

    как вариант url hash таблица. тогда можно вообще елать custom seo urls, но опять же производительность решения зависит напрямую от кеширования и рук писателя)
    Сапожник без сапог
  • smv

    Сообщения: 236 Репутация: N Группа: Кто попало

    Spritz Дек. 24, 2013, 5:41 п.п., спустя 3 дня 6 часов 20 минут

    Мне вот эта статья понравилась http://www.phpinfo.su/articles/practice/chpu_na_php.html Там фраза есть - "Во многих фреймворках ЧПУ строится по следующему принципу: http://server.com/модуль/действие/параметр1/значение1/параметр2/значение2/параметрН/значениеН/" Натолкнула она на мысль что это можно попробовать как то пристроить.

  • developer

    Сообщения: 244 Репутация: N Группа: Кто попало

    Spritz Дек. 31, 2013, 12:21 д.п., спустя 6 дней 6 часов 40 минут

    такая морока ни к чему на самом деле, в сео главное чтобы это было ЧПУ, а если в конце будет например -c-id.html то это не так и плохо.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!