Forum Webscript.Ru

Программирование => PHP => Тема начата: MASe от 08 Июля 2002, 14:00:01

Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 14:00:01
вот могу я взять текущую дату:
 if ($date_array[mday]) = 1
и печатать для каждой даты нужную мне страницу

а можно ли взять текущий каталог сайта???
т.е. если я в папке news - выдавать один текст в шапке, если в news-archive - другой текст?
Название: определение текущей директории
Отправлено: Alexandr от 08 Июля 2002, 14:18:51
Если каталог на машине, то
$DOCUMENT__ROOT
если адрес, то
$REQUEST_URI
Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 16:14:56
ОК...
А можно поподробнее с синтакисиом в $REQUEST_URI...
???
if ($$REQUEST_URI) = "http://name.ru/name")
????
правильно?
Название: определение текущей директории
Отправлено: Maniac от 08 Июля 2002, 16:53:00
Нет, неправильно.
$REQUEST_URI содержит адрес вида /dir_name/scriptname.php
Если тебе этого достаточно, то получить имя каталога (относительно корня сайта) можешь инструкцией

$res=$res[preg_match(\'/\\/.*\\//\',$REQUEST_URI,$res)-1];

Если тебе нужен полный адрес вида http://site/dir/ попробуй это:

$res=$res[preg_match(\'/http:\\/\\/.*?\\/.*\\//\',$SCRIPT_URI,$res)-1];
Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 17:06:43
бррррррррррррррр....
окончательно запутался в синтаксисе :-(((
я ж только учусь :-)

мне достаточно получить имя, относительно корня...
при этом инклудю страничку с этим определением, в которой определенная менюшка.

т.е. для dir1 - это menu1.php
      для dir2 - это menu2.php
... подсел я не знаю на чем...

если не трудно - киньте полный текст для решения такой проблемы... :-(((
Название: определение текущей директории
Отправлено: Maniac от 08 Июля 2002, 17:18:18
Цитировать
окончательно запутался в синтаксисе :-(((

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

Если тебе достаточно имени относительно корня, то делай так (стараюсь писать ясно и понятно).

//выделяем строку вида /dir1_name/dir2_name/ и т.п
preg_match(\'\\/.*\\//\',$REQUEST_URI,$res);

//заменяем все / на _
$res=preg_replace(\'/\\//\',\'_\',$res[0]);
include(\'/template_menu_dir/$res.inc\'); //инклюдим
Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 17:30:35
ага... понял синтаксис... но не понял про
инклуд - $res.inc
Название: определение текущей директории
Отправлено: Maniac от 08 Июля 2002, 17:32:57
Ну, я предположил, что файлы с менюшками лежат в каталоге /template_menu_dir и называетсю как-нить вроде _dir1_dir2_dir3_.inc
Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 17:43:50
ага!!!!.. все понятненько теперь.... спасибо...
просто я инклудю опять же php-шки...

т.о.
значит просто inc заменить на php...
а все инклуды положить в template_menu_dir
с именами, соответствующими самому собственно dir
в /info/ttt.php я буду инклудить info.php из папки с меню
в /main/ttt/php - main.php и т.д.

я все правильно понял теперь???

;-)))
и опяыт - сын ошибок трудных, и гений - просвященья друг..
Название: определение текущей директории
Отправлено: Maniac от 08 Июля 2002, 17:48:50
Не совсем так. В /info/ttt.php ты будешь инклюдить _info_.php, а в /main/ttt.php - _main_.php
Название: определение текущей директории
Отправлено: MASe от 08 Июля 2002, 17:57:12
ааа.... ну да....
знаки подчеркивания то я забыл....
ОК!!!! Спасибо огромное!!!!!! ;-)))))))))