Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: mod_rewrite + query_string

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
mike6
Отправлено: 22 Мая, 2010 - 18:56:57
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Добрый день,
подскажите как реализовать подстановку названия статьи (берем ее из базы) в строку броузера, а так же транслировать ее с крилициы на латиницу.

Спасибо.
 
 Top
JustUserR
Отправлено: 23 Мая, 2010 - 13:01:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mike6 пишет:
Добрый день, подскажите как реализовать подстановку названия статьи (берем ее из базы) в строку броузера, а так же транслировать ее с крилициы на латиницу
Вы можете поступить следующим образом а именно составить в файле .htaccess шаблон <Files> для перезаписываемых путей - и внутри него объявить MIME-тип данных файлов и для них сделать директиву Action которая будет пердавать обработку в определенный CGI-скрипт - а далее в CGI-скрипте вы получаете переменную окружения PATH_INFO с соответствующим путем который ввел пользователя и можете делать любую дальнейшую сложную обработку


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
mike6
Отправлено: 23 Мая, 2010 - 13:12:24
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Неужели никто не задавался таким вопросом ?
Пока смотрю в сторону конструкции:

http://site[dot]ru/article/novaja_statja[dot]html

RewriteRule ^article/([0-9-A-Za-z]+)\.html$ /article.php&name=$1 [NC,L]

В базу подставляется novaja_statja, срезаем все лишнии символы кроме нижнего подчеркивания, приводим к нижнему регистру и собственно ищем.

Скорее всего предется создавать еще одно поле, в котором и будет храниться название на латинице, или же конвертировать на лету это.

Что думаете господа эксперты?
 
 Top
JustUserR
Отправлено: 23 Мая, 2010 - 13:42:06
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mike6 пишет:
Неужели никто не задавался таким вопросом ?
Пока смотрю в сторону конструкции
А чем вас не устраивает вариант с промежуточным CGI-скриптом - ведь возможности по обработке строки в Perl-скрипте значительно лучше чем во встроенном в .htaccess механизме Кроме того вы сразу получаете возможность для шаблонизации


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
mike6
Отправлено: 23 Мая, 2010 - 14:05:02
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




JustUserR не могли бы Вы рабочий пример показать.
А то с перлом не настолько сильно дружу.
 
 Top
JustUserR
Отправлено: 23 Мая, 2010 - 17:19:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mike6 пишет:
JustUserR не могли бы Вы рабочий пример показать.
А то с перлом не настолько сильно дружу.
Я могу показать какие директивы .htaccess и какой CGI-скрипт я примерно имел в виду В файле .htaccess необходимо прописать директирию для которой будет осущесвляться обработка
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <Directory /acticles>
  3. AddType application/x-perl-parsing .non-excisting-ext
  4. ForceType application/x-perl-parsing
  5. Action application/x-perl-parsing /path/to/perl-script.cgi
  6. </Directory>
И сам CGI-скрипт на пути /path/to/perl-script.cgi в принципе может быть обычным PHP-скриптом и выглядеть так
CODE (php):
скопировать код в буфер обмена
  1. #!/usr/bin/php
  2. $quered_path=$_SERVER['PATH_INFO']; // Путь который запросил пользователь


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
mike6
Отправлено: 24 Мая, 2010 - 14:45:58
Post Id


Новичок


Покинул форум
Сообщений всего: 17
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Благодарю коллега. Буду пробовать.
 
 Top
JustUserR
Отправлено: 24 Мая, 2010 - 15:31:54
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




mike6 пишет:
Благодарю коллега. Буду пробовать.
На здоровье - пробуйте Также отмечу что Apache поддерживает цепочки обработчиков Action для ресурсов с различным MIME-типом - поэтому даже если у вас имееются обычный PHP-скрипт который обрабатывается PHP-интерпретатором как CGI-скриптом то такая схема будет также работать - сначала Apache найдет обраотчик для указанного нами типа файлов а потом увидит что он также является не исполнемым и продолжит вызов по цепочке


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB