Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: RewriteRule - работа с GET-параметрами
 
 автор: boqueano   (25.09.2006 в 16:58)   письмо автору
 
 

Уважаемые!!!
Подскажите???

есть правело
надо вместо одной конкретной стр. producer.php?ID=4070
подставлять producer4070.htm

написал правело:
RewriteRule ^producer\.php\?ID\=4070$ producer4070.htm
не работает???

в обратную сторону т.е.
RewriteRule ^producer4070\.htm$ producer.php?ID=4070
работает

подозреваю что не правильно написал регулярное выражение ^producer\.php\?ID\=4070$
и даже думаю что цифры надо преобразовать в символы цифр но КАК ЭТО СДЕЛАТЬ???

Спасибо!!!
(Уже последняя мозга за мозгу заходит)

   
 
 автор: Максимыч   (25.09.2006 в 17:12)   письмо автору
 
   для: boqueano   (25.09.2006 в 16:58)
 

А в чём проблема-то собственно?
Этот вариант правильный RewriteRule ^producer4070\.htm$ producer.php?ID=4070. Он и должен работать.

   
 
 автор: boqueano   (26.09.2006 в 00:54)   письмо автору
 
   для: Максимыч   (25.09.2006 в 17:12)
 

Мне как раз нужет первый вариант который не работает
спасибо, еще раз!

   
 
 автор: kasmanaft   (26.09.2006 в 08:49)   письмо автору
 
   для: boqueano   (25.09.2006 в 16:58)
 

Как-то так ...

RewriteRule ^producer([\d]+)\.htm$ producer.php?ID=$1

   
 
 автор: boqueano   (26.09.2006 в 09:03)   письмо автору
 
   для: kasmanaft   (26.09.2006 в 08:49)
 

Господа-товарищи, спасибо большое за отзывы
но мне надо как раз другое (наверное я плохо объясняю)

очень просто надо чтобы вместо одной (единственной) стр. producer.php?ID=4070
подставлялась producer4070.htm
а не наоборот, задача такая

HELP????
^producer\.php\?ID\=4070$
где в этом регулярном выражении ошибка?
(я подозреваю что цифры не воспринимаются как символы цифр)

Спасибо

   
 
 автор: cheops   (26.09.2006 в 11:41)   письмо автору
 
   для: boqueano   (26.09.2006 в 09:03)
 

Ничего не сможете сделать, не учитывает mod_rewrite GET-параметры (просто отрезает их). Лучше заводите файл producer.php и делайте редирект от туда.

   
 
 автор: boqueano   (26.09.2006 в 13:04)   письмо автору
 
   для: cheops   (26.09.2006 в 11:41)
 

Спасибо! Уже теплее
Т.е с помощью mod_rewrite я не смогу подставить вместо одного полного url (который включает GET) другой url ?

С уважением

   
 
 автор: cheops   (26.09.2006 в 17:21)   письмо автору
 
   для: boqueano   (26.09.2006 в 13:04)
 

Да, вы можете убедиться в этом, включив логгирование операций mod_rewrite - в логи модуль подробно пишет, что он получает и какие преобразования осуществляет.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования