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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с URL, Не знаю, как объяснить... 
:(
    Опции темы
Guedda
Дата 14.7.2006, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Ни разу мне не приходилось с этим общаться, и вот пришло... 
Извините, конечно, за ламерский вопрос:

Лежит в корне index.php. Если набрать url вида:
http://mysite.com/negative/
это будет равносильно http://mysite.com/?page=negative

Как это реализовать?

 smile 

Заранее благодарен.
 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
PARROT
Дата 14.7.2006, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

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



Стоит посмотреть в этой теме: http://forum.vingrad.ru/index.php?showtopic=69671  


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Guedda
Дата 14.7.2006, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Хм... В той теме написано про элемент массива = значение, т.е.
http://mysite.com/peremennaya/2/
равносильно:
Код

$peremennaya=2;

А мне необходимо, чтобы было примерно так:
http://mysite.com/pix/
равносильно:
Код

$peremennaya = 'pix';


Пожалуйста, помогите... 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 14.7.2006, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



разбирай запрос по например explode("/",$_SERVER['REQUEST_URI']);
или так
http://ru.php.net/manual/ru/function.parse-url.php 
PM MAIL   Вверх
Guedda
Дата 14.7.2006, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Цитата(alligator @  14.7.2006,  21:22 Найти цитируемый пост)
разбирай запрос по например explode("/",$_SERVER['REQUEST_URI']);

Не выходит... Пишет, мол такой директории нет "/pix"

Цитата(alligator @  14.7.2006,  21:22 Найти цитируемый пост)
или так
http://ru.php.net/manual/ru/function.parse-url.php  

А можешь подробнее, как через parse_url сделать то, что я хочу?
 smile  


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 14.7.2006, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Сначала нужно включить поддержку mod_rewrite
содаешь в корневой директории файл .htaccess
и в него
пишешь
-----------------------------------------------------------------------
php_flag register_globals 0
AddType application/x-httpd-php .php .htm .html .phtml
RewriteEngine on
Options +FollowSymlinks +Multiviews
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php [L,QSA]
-----------------------------------------------------------------------
Далее работаешь с explode разбирая $_SERVER['REQUEST_URI'] 
PM MAIL   Вверх
Guedda
Дата 14.7.2006, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



alligator, Делаю так, как ты написал.
Код

php_flag register_globals 0
AddType application/x-httpd-php .php .htm .html .phtml
RewriteEngine on
Options +FollowSymlinks +Multiviews
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php [L,QSA]

Пишу в index.php:
Код

<?php
  $Str = explode('/', $_SERVER['REQUEST_URI']);
  print_r($Str);    
?>

Пишу:
http://localhost/mysite.ru/my
Пишет:
Цитата

Array ( [0] => [1] => mysite.ru [2] => index.php )

И редиректится на index.php
А мне надо, чтобы где-нибудь в массиве (Array) написалось "my". Помоги, а....
Plz... 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 14.7.2006, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



$str = explode("/","http://localhost/mysite.ru/my/");
print_r($str);
слеш в конце добавь 
PM MAIL   Вверх
Guedda
Дата 14.7.2006, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



наверное, дело в $_SERVER['REQUEST_URI']
Пишу так:
Код

<?php
  $Str = explode('/', 'http://localhost/mysite.ru/my/');
  print_r($Str);    
?>

Ввожу:

Показывает:
Цитата

Array ( [0] => http: [1] => [2] => localhost [3] => mysite.ru [4] => my [5] => )


Делаю так:
Код

<?php
  $Str = explode('/', $_SERVER['REQUEST_URI']);
  print_r($Str);    
?>

Ввожу:

Показывает:
Цитата

Array ( [0] => [1] => mysite.ru [2] => index.php )


Ну что это такое? Может в .htaccess что-нить напутали? 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 14.7.2006, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Чёта ты там намудрил.... у меня номально работает
$_SERVER['REQUEST_URI']  должен возвратить  что то типа этого
Array ( [0] => mysite.ru [1] => my ) 
PM MAIL   Вверх
Guedda
Дата 14.7.2006, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Вот мой .htaccess:
Код

php_flag register_globals 0
AddType application/x-httpd-php .php .htm .html .phtml
RewriteEngine on
Options +FollowSymlinks +Multiviews
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://localhost/domain2.mysite.ru/index.php [L,QSA]

Пишу так:
Код

<?php
  $Str = explode('/', $_SERVER['REQUEST_URI']);
  print_r($Str);    
?>

Пишу в браузере:

Выскакивает:
Цитата

Array ( [0] => [1] => domain2.mysite.ru [2] => )


Хм... Может это поможет, но я Денвером пользуюсь... Не в этом случайно, проблема?   

Это сообщение отредактировал(а) Guedda - 14.7.2006, 21:37


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 15.7.2006, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



На денвере у меня работает я там тестирую в основном свои скрипты
и исправь в  htaccess
строчку
RewriteRule ^(.*)$ http://localhost/domain2.mysite.ru/index.php [L,QSA]
на
RewriteRule ^(.*)$ ./index.php [L,QSA] 
PM MAIL   Вверх
Guedda
Дата 16.7.2006, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Цитата(alligator @  15.7.2006,  10:44 Найти цитируемый пост)
и исправь в  htaccess
строчку
RewriteRule ^(.*)$ http://localhost/domain2.mysite.ru/index.php [L,QSA]
на
RewriteRule ^(.*)$ ./index.php [L,QSA]  

Исправил строку, и при вводе http://localhost/domain2.mysite.ru/my/ Получаю ошибку вида:
Цитата

Not Found
The requested URL /index.php was not found on this server.

Подсказка Денвера

Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл z:/home/localhost/www/index.php, которого не существует. 

Что делать? 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Guedda
Дата 16.7.2006, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

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



Ну так что... Может ещё варианты какие есть?
Просто позарез нужно.

Вот, допустим, как работает ссылка 
http://guedda.livejournal.com/friends/
? 
Я так понимаю, что это то же самое, что и 
http://guedda.livejournal.com/index.php?page=friends 


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
alligator
Дата 16.7.2006, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



и исправь в  htaccess
строчку
RewriteRule ^(.*)$ http://localhost/domain2.mysite.ru/index.php [L,QSA]
на
RewriteRule ^(.*)$ ./index.php [L,QSA]  

файл .htaccess положить в папку domain2.mysite.ru 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0961 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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