Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ЧПУ 
:(
    Опции темы
Цербер
Дата 11.7.2008, 07:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Доброе время суток!
Почитал много статей по ЧПУ. Там же вычитал что самый чудодейственный метод это с помощью mode_rewrite.
Основную суть я понял а вот с самим кодом не разобрался.
особенно я не разобрался с 
Код

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^.htaccess$ - [F]
RewriteRule  ^oldstuff\.html$  newstuff.html [L]

если не сложно может объясните наглядно на моём примере.
допустим у меня есть адрес index.php?kat_id=1&company=12
что нужно для преобразования его в вид index.php/kat_id/1/company/12
и какого типа ссылку прописывать в html ??
заранее благодарю!!!

Это сообщение отредактировал(а) Цербер - 11.7.2008, 07:39
PM MAIL ICQ   Вверх
skyboy
Дата 11.7.2008, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


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

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




M
skyboy
К РНР вопрос отношения не имеет ни малейшего. Тема перенесена.

PM MAIL   Вверх
Feldmarschall
Дата 11.7.2008, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цитата(Цербер @  11.7.2008,  07:32 Найти цитируемый пост)
что нужно для преобразования его в вид index.php/kat_id/1/company/12

ничего.
в вид /kat_id/1/company/12 преобразовывать надо руками, в скрипте.
а если преобразовывать в вид index.php/kat_id/1/company/12, то никакого рерайта вообще не нужно - все будет и так работать.

а вот если ссылки на странице вида /kat_id/1/company/1
то лучше сделать одно универсальное правило

Код

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule  ^(.*)$ index.php?param=$1 [QSA,L]

И разбирать пришедшую строку в скрипте.
PM   Вверх
Цербер
Дата 11.7.2008, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Feldmarschall
имел ввиду domain.ru/index.php?kat=1&company=12 преобразовать в domain.ru/kat/1/company/12

что в .htaccess а что в html писать? 

Цитата

в вид /kat_id/1/company/12 преобразовывать надо руками, в скрипте.

подробнее можно?
если можно давайте вместе разберём мою ситуацию 
есть адрес 
domain.ru/index.php?kat=1&company=12 из неё нада сделать domain.ru/kat/1/company/12
буду очень признателен!
благодарю!
PM MAIL ICQ   Вверх
Feldmarschall
Дата 11.7.2008, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цитата(Цербер @  11.7.2008,  10:59 Найти цитируемый пост)
есть адрес 

где?
PM   Вверх
Цербер
Дата 11.7.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Feldmarschall

Цитата

Цитата(Цербер @  11.7.2008,  10:59 )
есть адрес 


где?


ну это пока на локалке=)
хорошо было бы узнать план действий и как решить каждое действие!
 
PM MAIL ICQ   Вверх
SamDark
Дата 11.7.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый кот
***


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

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





--------------------
rmcreative.ru — Это жжж неспроста...
yiiframework.ru — О фреймворке Yii на русском.
reggi — здесь я регистрирую домены
PM MAIL WWW GTalk Jabber MSN   Вверх
Feldmarschall
Дата 11.7.2008, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цербер, при чем здесь локалка?
Этот адрес висит в воздухе? Написан на заборе?
Где ты этот адрес видишь? Где конкретно он "есть", где его надо заменить?

каждое действие я тебе описал.
1. меняешь адреса на сайте
2. пишешь правило
3. разбираешь адрес в скрипте.
PM   Вверх
Цербер
Дата 11.7.2008, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



SamDark
спасибо за статьи, вроде разобрался с самим преобразованием по простому примеру типа 
Код

RewriteEngine On

RewriteRule ^news/([0-9]{4})[/]?$ news.php?year=$1

тока одно интересует:
как сделать что бы название скрипта не выводилось а выводились сразу категории
ну например:
index.php?kat=1&company=12 стала вот такой kat/1/company/ и ещё один вопрос а как теперь определять GET ?
PM MAIL ICQ   Вверх
Feldmarschall
Дата 11.7.2008, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цитата(Цербер @  11.7.2008,  13:22 Найти цитируемый пост)
как сделать что бы название скрипта не выводилось а выводились сразу категории

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

Цитата(Цербер @  11.7.2008,  13:22 Найти цитируемый пост)
как теперь определять GET ? 

что такое "определять GET"?

Это сообщение отредактировал(а) Feldmarschall - 11.7.2008, 13:29
PM   Вверх
Цербер
Дата 11.7.2008, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

что такое "определять GET"?

ну например 
Код

if(isset($_GET['kat_id'])){
 ...
}

PM MAIL ICQ   Вверх
Feldmarschall
Дата 11.7.2008, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



точно так же
Код

if(isset($_GET['kat_id'])){
 ...
}

ты сделай сначала, то, с чем "разобрался". глядишь, вопросов и не будет. или будут, но другие.
PM   Вверх
Цербер
Дата 11.7.2008, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Feldmarschall 
хорошо буду разбираться=)
спасибо smile 
но вопрос не делаю решённым, если не трудно посматривайте в эту тему=)
Благодарю!
PM MAIL ICQ   Вверх
Цербер
Дата 11.7.2008, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Feldmarschall
ну вот поразбирался, и опять много вопросов=)
например вот с этим правилом 

Код

RewriteRule ^index/([0-9]*)[/]([0-9]*)[/]?$ index.php?kat_id=$1&company=$2

ссылку приходится писать index/kat_id/1/company/121

а как сделать что бы можно было просто написать /kat_id/1/company/121 вместо index/kat_id/1/company/121

и ещё вопрос всё таки с GET-ом, допустим у меня выводятся компании по категории при нажатии /kat_id/1/ вышли компании из базы с parent_id = 1, раньше я делал:
Код

if(isset($_GET['kat_id'])){
     вывод тех самых компаний из базы где parent_id=$_GET['kat_id'] 
}

а сейчас как это реализовать?
PM MAIL ICQ   Вверх
skyboy
Дата 11.7.2008, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


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

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



Цитата(Цербер @  11.7.2008,  14:05 Найти цитируемый пост)
а как сделать что бы можно было просто написать /kat_id/1/company/121 вместо index/kat_id/1/company/121

"index" убрать
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




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


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

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