Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2011, 20:36   #1
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию Передача данных из URL в скрипт

Привет.
Как сделать, чтобы при заходе на страницу http://.../url1 происходил вызов скрипта index.php с передачей в него url1 как параметра (например, типа GET)?
Вроде обычно как-то делается через .htaccess, но вот как конкретно и где что написать?
motorway вне форума Ответить с цитированием
Старый 12.04.2011, 21:28   #2
MrJenika
Форумчанин
 
Аватар для MrJenika
 
Регистрация: 07.09.2009
Сообщений: 361
По умолчанию

mod_rewrite?
MrJenika вне форума Ответить с цитированием
Старый 13.04.2011, 07:48   #3
freeeeez
Пользователь
 
Регистрация: 20.12.2010
Сообщений: 55
По умолчанию

RewriteRule ^(.*)/url1$ index.php?name=url1 [L]

Так пойдет?
freeeeez вне форума Ответить с цитированием
Старый 14.04.2011, 02:43   #4
AgentSmit
Пользователь
 
Аватар для AgentSmit
 
Регистрация: 17.02.2010
Сообщений: 50
По умолчанию

А можно и так:
в .htaccess:

PHP код:
ErrorDocument 404 /index.php
ErrorDocument 403 
/index.php
ErrorDocument 401 
/index.php 
Далее в index.php
PHP код:
header("HTTP/1.0 200 Ok");

//Обработка URI
//Удаляем слэш в начале строки
$uri preg_replace("/\A[\/]/","",$_SERVER['REQUEST_URI']);
//Удаляем слэш в конце строки
$uri preg_replace("/[\/]\Z/","",$uri);
//Создаем масив параметров
$dir explode("/",$uri);
//Вставляем параметры из dir[n] куда нам надо
... 
Encode the world

Последний раз редактировалось AgentSmit; 14.04.2011 в 02:45.
AgentSmit вне форума Ответить с цитированием
Старый 14.04.2011, 03:17   #5
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от AgentSmit Посмотреть сообщение
А можно и так:
в .htaccess:

PHP код:
ErrorDocument 404 /index.php
ErrorDocument 403 
/index.php
ErrorDocument 401 
/index.php 
Далее в index.php
PHP код:
header("HTTP/1.0 200 Ok");

//Обработка URI
//Удаляем слэш в начале строки
$uri preg_replace("/\A[\/]/","",$_SERVER['REQUEST_URI']);
//Удаляем слэш в конце строки
$uri preg_replace("/[\/]\Z/","",$uri);
//Создаем масив параметров
$dir explode("/",$uri);
//Вставляем параметры из dir[n] куда нам надо
... 
Я знаю способ лучше! Создаёте в корне сайта папки url1, url2, url3 и т.д. все возможные варианты. Если необходимо, то внутри этих папок создаёте ещё папки, чтобы работало http://site.ru/url1/var1
Теперь в каждой папке создаёте файл index.php, который будет пересылать на корневой index.php с передачей необходимых переменных. Вуаля! ))))
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 14.04.2011, 08:19   #6
AgentSmit
Пользователь
 
Аватар для AgentSmit
 
Регистрация: 17.02.2010
Сообщений: 50
По умолчанию

Цитата:
Сообщение от Johnatan Посмотреть сообщение
Я знаю способ лучше! Создаёте в корне сайта папки url1, url2, url3 и т.д. все возможные варианты. Если необходимо, то внутри этих папок создаёте ещё папки, чтобы работало http://site.ru/url1/var1
Теперь в каждой папке создаёте файл index.php, который будет пересылать на корневой index.php с передачей необходимых переменных. Вуаля! ))))
А что если возможных значений параметров(var1) много или это id динамически формируемой страницы? Получается что создал в БД страницу и нужно еще для нее создать еще и php файл чтобы она отобразилась?

Это не профессионально. Лучший способ конечно использовать mod_rewrite.
Encode the world
AgentSmit вне форума Ответить с цитированием
Старый 14.04.2011, 14:54   #7
dekameron
Форумчанин
 
Аватар для dekameron
 
Регистрация: 27.04.2010
Сообщений: 185
По умолчанию

Цитата:
Сообщение от AgentSmit Посмотреть сообщение
А что если возможных значений параметров(var1) много или это id динамически формируемой страницы? Получается что создал в БД страницу и нужно еще для нее создать еще и php файл чтобы она отобразилась?

Это не профессионально. Лучший способ конечно использовать mod_rewrite.

А помойму Johnatan просто постебался
Помог - тырк на весы
dekameron вне форума Ответить с цитированием
Старый 15.04.2011, 00:36   #8
AgentSmit
Пользователь
 
Аватар для AgentSmit
 
Регистрация: 17.02.2010
Сообщений: 50
По умолчанию

Цитата:
Сообщение от dekameron Посмотреть сообщение
А помойму Johnatan просто постебался
Конечно. То что он предложил просто гупость
Encode the world

Последний раз редактировалось AgentSmit; 15.04.2011 в 00:40.
AgentSmit вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача данных PR0Z0N PHP 0 25.10.2010 04:29
передача данных bbk_serg БД в Delphi 6 15.04.2009 14:23
Передача данных Ivanich JavaScript, Ajax 1 29.04.2008 00:25
Передача Оперой и Фаерфоксом файлового пути в скрипт на этой же локальной машине Adamant PHP 3 27.11.2007 15:06