Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по Чпу 
:(
    Опции темы
Zmiuko
Дата 27.4.2009, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Понимаю, что я вам порядком надоел.

Проверте мну пожалуйста:

У меня есть ссылки вида:

?cor=module&mod=help&act=97868

Задействованы переменные $_GET['cor'], $_GET['mod'] и $_GET['act'], соответственно.

Значения каждой из них, могут быть как буквенные, так и циферные, так и символьные... таким образом неважно что мы в них передаем.

Необходимо написать ЧПУ, чтобы ссылки были вида: module-help-97868.html

Я накидал .htaccess файлик:

Код

RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteRule ^.htaccess$ - [F]
RewriteRule ^(.*).html index.php?cor=$1 [L]


Но он создает видимость ссылок только по переменной $_GET['cor'], понятное дело.

Скажите, верно ли? И как мне сделать для трех переменных сразу указанных вверху?

Спасибо за уделенное мне внимание.


PM MAIL WWW ICQ Skype Jabber   Вверх
enof
Дата 27.4.2009, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



^(.*)-(.*)-(.*)\.html$ index.php?cor=$1&mod=$2&act=$3
PM MAIL ICQ Skype   Вверх
lelik133
Дата 27.4.2009, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 517
Регистрация: 5.2.2003
Где: Москва

Репутация: 5
Всего: 14



Код

RewriteRule ^(.*)-(.*)-(.*).html index.php?cor=$1&mod=$2&act=$3 [L]

в самом общем виде

Добавлено через 1 минуту и 27 секунд
опередил ))
PM ICQ   Вверх
Zmiuko
Дата 27.4.2009, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Чуть разобрался:

Код

RewriteEngine On
Options +FollowSymlinks
RewriteBase /
RewriteRule ^.htaccess$ - [F]
RewriteRule ^(.*)-(.*)-(.*).html index.php?cor=$1&mod=$2&act=$3 [L]


но ссылки вида http://имя_сайт/module-help-.html
последняя почему-то без - не канает, то есть указанный $_GET['act'] пустой, о должен быть, зараза такая.

Как будет вернее?

Добавлено через 1 минуту и 2 секунды
Enof как метеор smile
PM MAIL WWW ICQ Skype Jabber   Вверх
enof
Дата 27.4.2009, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Все должно нормально работать, если есть дефис в конце.

Это сообщение отредактировал(а) enof - 27.4.2009, 16:26
PM MAIL ICQ Skype   Вверх
Zmiuko
Дата 27.4.2009, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Понятно, спасибо smile побежал делать smile

Добавлено через 13 минут и 9 секунд
А как будет выглядеть если к примеру необходимы такие ссылки
  • /index.html
  • /module.html
  • /module-help.html
  • /module-help-2532.html

Где верхний /index.html не модуль ?cor=index, а простой index.php ?

Или лучшим вариантом все-таки будет создание пустышек, чтобы закрыть дефис за которым не следует значения переменной, к примеру в случае ?cor=module где уже необходимо писать аж два дефиса /module--.html ?
PM MAIL WWW ICQ Skype Jabber   Вверх
Zmiuko
Дата 27.4.2009, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Просто эти дефисы не лучший вариант.

Добавлено через 1 минуту и 10 секунд
Я о пустых дефисах smile
PM MAIL WWW ICQ Skype Jabber   Вверх
enof
Дата 27.4.2009, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Код

^([^-]*)(?:-([^-]*)(?:-([^-]*)))\.html$ index.php?cor=$1&mod=$2&act=$3

 smile
PM MAIL ICQ Skype   Вверх
Zmiuko
Дата 27.4.2009, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



smile фигасе.. Блин, спасибо те, я б еще сутки думал как так собрать.
PM MAIL WWW ICQ Skype Jabber   Вверх
enof
Дата 27.4.2009, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Там смайл не тот поставился. И про index.html я забыл. А зачем такие ивращения? Сделай index.html тоже как бы модулем.
PM MAIL ICQ Skype   Вверх
MoLeX
Дата 28.4.2009, 05:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



мдя, я давно уже от такого подхода отказался...

Код

RewriteEngine on
RewriteCond $1 !^(index\.php|img|js|css|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]


т.е. перенаправляем любые запросы (кроме img, js, css, robots.txt) на index.php
Код

print_r($_SERVER); // даст тебе подсказку, что надо использовать


Это сообщение отредактировал(а) MoLeX - 28.4.2009, 05:49


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
enof
Дата 28.4.2009, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Код

\.html$

вот это в выражении неспроста smile 
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0514 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.