IgorA100 90 Опубликовано: 20 августа 2010 Рассказать Опубликовано: 20 августа 2010 (изменено) www.cgmap.ru При выводе новостей мне нужно использовать еще одну дополнительную не стандартную переменную в запросе. Примеры УРЛА: http://www.cgmap.ru/news/index.php?do=cat&category=cfo&catgroup=a http://www.cgmap.ru/news/index.php?cstart=2&do=cat&category=cfo&catgroup=a Без ЧПУ все прекрасно работает. Что мне прописать в htaccess, что бы понимало переменную "catgroup" В качестве значения может быть любая строка. ЗЫ: Ранее, при включенном ЧПУ была такая строка запроса: http://www.cgmap.ru/news/maps/rus/cfo/&catgroup=a И она работала. Некрасиво конечно, но работало.... Но вот при навигации по страницам получается такой УРЛ: http://www.cgmap.ru/news/maps/rus/cfo/catgroup/a/page/2/ И он естественно не разбирается в плане этого куска: "catgroup/a" Хелпми знающие люди, сайт надо включать срочно.... ЗЫЗЫ: Сайт с лицензией, Владимир надеюсь помнит... В init.php вставлено: if (isset ( $_REQUEST['catgroup'] )) $catgroup = @$db->safesql ( strip_tags ( str_replace ( '/', '', $_GET['catgroup'] ) ) ); else $catgroup = ''; Пробовал прописать в htaccess и так: RewriteRule ^catgroup/(.*)$ index.php?catgroup=$1 [L] Не работает При этом еще и при запросе: http://www.cgmap.ru/news/maps/rus/cfo/catgroup/a/page/2/ $category равняется "a", вместо "cfo" В общем жесть с ЧПУ у меня Изменено 20 августа 2010 пользователем IgorA100 Цитата Ссылка на сообщение Поделиться на других сайтах
IgorA100 90 Опубликовано: 20 августа 2010 Рассказать Опубликовано: 20 августа 2010 (изменено) Автор Если прописываю так: RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^.]+)/catgroup/([a-z]+)(/?)+ index.php?catgroup=$2 [L] RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L] RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L] То при запросе: http://www.cgmap.ru/news/maps/rus/cfo/catgroup/b/page/2/ получаю: do="" category="" catgroup="b" cstart="0" Т.е. catgroup получается нормальным, но все остальное портится Нужно еще одно правило написать в дополнение к этому: RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L] Но как его блин написать.... ЫЫы...... Все, вопрос закрыт. Сайт включен. Сам все починял... Пришлось срочно изучать регулярки и как работает ЧПУ. Нужно было добавить 2а правила в нужное место. Вот привожу код: RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^.]+)/catgroup/([^/]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&catgroup=$2&cstart=$3 [L] RewriteRule ^([^.]+)/catgroup/([^/]+)(/?)+$ index.php?do=cat&category=$1&catgroup=$2 [L] RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L] RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L] Изменено 20 августа 2010 пользователем IgorA100 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.