The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Нужна помощь по mod_ReWrite + php уже отчаялся сам разобрать..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"Нужна помощь по mod_ReWrite + php уже отчаялся сам разобрать..."  
Сообщение от Денис email(??) on 08-Сен-06, 13:28 
Проблема такова, есть сайт где регистрируется человек и на него заводится профиль и ему соответственно присваеваится какой то id.
Адрес URL к профилю , будет примерно такой www.moi-site.ru/index.php?action=userprofile&user_id=N, где N - 1,2,3,4,5 ... id - пользователя.


Собственно сам вопрос? хочу сделать доступ к профилю пользователя с ЧПУ, что бы был красивый уникальный URL к профилю
т.е. сопоставить
www.moi-site.ru/index.php?action=userprofile&user_id=1  -   www.moi-site.ru/petya
www.moi-site.ru/index.php?action=userprofile&user_id=2  -   www.moi-site.ru/vasya
www.moi-site.ru/index.php?action=userprofile&user_id=3  -   www.moi-site.ru/kolyz

т.е. когда набираем www.moi-site.ru/petya происходит редирект на www.moi-site.ru/index.php?action=userprofile&user_id=1, но так чтобы в браузере по прежнему отображалось www.moi-site.ru/petya, т.е. редирект был какбы завуалирован

Количество пользователей будет довольно много поэтому возможно ли сделать так чтобы данные по сопоставлению адресов хранились в БД, а не в .htaccess, но и эти данный брались скриптом находящемся в .htaccess после чего делался бы редирект.

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Нужна помощь по mod_ReWrite + php уже отчаялся сам разобрать..."  
Сообщение от openwork email on 15-Сен-06, 09:11 
то как ты хочешь сделать по моему только через
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html#RewriteMap (на тему External Rewriting Program) возможно (точнее можно и обычным map но надо будет после каждого нового пользователя генерить dbm заново), но если
сделать соответвие

www.moi-site.ru/index.php?action=userprofile&user_name=petya  -   www.moi-site.ru/petya

то можно без внешних map, имена ж все равно уникальны.


>Проблема такова, есть сайт где регистрируется человек и на него заводится профиль
>и ему соответственно присваеваится какой то id.
>Адрес URL к профилю , будет примерно такой www.moi-site.ru/index.php?action=userprofile&user_id=N, где N -
>1,2,3,4,5 ... id - пользователя.
>
>
>Собственно сам вопрос? хочу сделать доступ к профилю пользователя с ЧПУ, что
>бы был красивый уникальный URL к профилю
>т.е. сопоставить
>www.moi-site.ru/index.php?action=userprofile&user_id=1  -   www.moi-site.ru/petya
>www.moi-site.ru/index.php?action=userprofile&user_id=2  -   www.moi-site.ru/vasya
>www.moi-site.ru/index.php?action=userprofile&user_id=3  -   www.moi-site.ru/kolyz
>
>т.е. когда набираем www.moi-site.ru/petya происходит редирект на www.moi-site.ru/index.php?action=userprofile&user_id=1, но так чтобы в
>браузере по прежнему отображалось www.moi-site.ru/petya, т.е. редирект был какбы завуалирован
>
>Количество пользователей будет довольно много поэтому возможно ли сделать так чтобы данные
>по сопоставлению адресов хранились в БД, а не в .htaccess, но
>и эти данный брались скриптом находящемся в .htaccess после чего делался
>бы редирект.


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "Нужна помощь по mod_ReWrite + php уже отчаялся сам разобрать..."  
Сообщение от proxyd on 15-Сен-06, 11:56 
Ответ может быть не потеме но как мне кажется болле актуален.
Используем .htaccess

# Перенаправляем все запросы на конкретный скрипт
Action throw /index.php
<FilesMatch "^([^.]+)$">
ForceType throw
</FilesMatch>

Потом парсим этот запрос и получая переменные. Пусть к примеру первая переменная будет именем пользователя. Ищем его в базе данных и выдаем нужную страницу. Помоему это более простое рещение чем писать правила для mod_rewrite

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "Нужна помощь по mod_ReWrite + php уже отчаялся сам разобрать..."  
Сообщение от sergei_vasilyev (ok) on 15-Сен-06, 12:17 
Поменяй user_id на user_name и задача упростится в разы.

А что такое "пользователь с ЧПУ"? "пользователь с числово-программным управлением"?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру