[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Изменить ссылки на ЧПУ. Правильно ли делаю?
OlegG
Здравствуйте.
Написал с нуля каталог товаров. Каждый товар относится к определенной категории. Меню с ссылками на товары:
мой сайт/index.php?category=14
Ссылка на определенный товар
мой сайт/index.php?page=mat-info&id=96
Прочитав за ЧПУ, чтобы уйти от всяких параметров типа ?page=mat-info&id=96 сделал следующим образом. В таблицу категорий добавил поле kat-url, в которое использовав функцию транслита в таблицу категорий занес название категорий (например: kategorija-kraska-alkidnaja и т.п.) и в таблицу товаров добавил поле mat-url занес названия товаров (например: emal-pf115-belaja, emal-pf266-dlja-pola и т.п.).
Далее на странице в меню со ссылками на товары делаю такие:
мой сайт/category/kategorija-kraska-alkidnaja
Ссылки на страницу товара делаю вида:
мой сайт/product/emal-pf115-belaja
мой сайт/product/emal-pf266-dlja-pola
Затем в файле .htaccess сделал всю переадресацию на index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
И теперь в файле index.php "распарсиваю" $_SERVER['REQUEST_URI'] . Получаю два параметра: для вывода товаров в категории ( мой сайт/category/kategorija-kraska-alkidnaja ) первый параметр category, второй параметр kategorija-kraska-alkidnaja и соответственно запрос в базу делаю не по id категории, а по добавленному полю kat-url (в данном случае kat-url = kategorija-kraska-alkidnaja).
Если нужна страница товара (мой сайт/product/emal-pf115-belaja) первый параметр получаю product, и второй параметр emal-pf115-belaja и запрос в базу идет по второму параметру mat-url = emal-pf115-belaja.
Предположим, что названия товаров и категорий в транслите изменятся не будут.
ВОПРОС: я вообще правильно все это делаю???
dron4ik
я ничего не понял... форматни текст

_____________
Ex3m.com.ua — Активный образ жизни
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.