Forum Webscript.Ru

Программирование => Perl => Тема начата: Evgeny от 30 Апреля 2002, 18:07:27

Название: Имя выполняющегося скрипта.
Отправлено: Evgeny от 30 Апреля 2002, 18:07:27
Привет всем!
Подскажите пожалуйста, как узнать из скрипта его имя?
Большое спасибо.
Название: Имя выполняющегося скрипта.
Отправлено: YA от 30 Апреля 2002, 22:33:58
а)  $ENV{SCRIPT_NAME}
б) специальная переменная $0
А еще посмотри др. переменные окружения - многие из них могут помочь получить имя файла и путь.
Название: Имя выполняющегося скрипта.
Отправлено: Green Kakadu от 01 Мая 2002, 00:36:18
Цитировать
$ENV{SCRIPT_NAME}

только на хостинге hut.ru это не работает, не знаю зачем они это сделали, но выдает оно хрен знает что - скорее путь к файлу, а не его имя.
Название: Имя выполняющегося скрипта.
Отправлено: YA от 01 Мая 2002, 13:41:28
Green Kakadu
Да, все правильно:
$ENV{SCRIPT_NAME} - URL - путь к вызываемому сценарию CGI, но эту переменную все равно можно использовать:

$script_name=($ENV{\'SCRIPT_NAME\'}=~/\\/([^\\/]+)$/)[0];
Название: Имя выполняющегося скрипта.
Отправлено: Green Kakadu от 02 Мая 2002, 01:43:00
Цитировать
Да, все правильно:
$ENV{SCRIPT_NAME} - URL

хы, в том то и дело, что у них это не URL, а полный путь.
Т.к. $ENV{SCRIPT_NAME} часто используется в формах в ACTION, то на Hut.ru такие скрипты ;) не работают, т.к. пересылают не туда.
Название: Имя выполняющегося скрипта.
Отправлено: YA от 05 Мая 2002, 22:42:17
Цитировать
$ENV{SCRIPT_NAME} - URL - путь к вызываемому сценарию CGI

Я не совсем точно написал. "URL-путь" - через дефис, там нет тире :) Но это, видимо, все равно не точный перевод...
у меня (и не только) $ENV{SCRIPT_NAME} всегда содержит путь от корневой директории виртуального сервера, но не полный путь от корня главного сервера и точно не имя скрипта.

Цитировать
у них это не URL, а полный путь

В смысле, полный от корня главного сервера или все-таки виртуального?
Название: Имя выполняющегося скрипта.
Отправлено: Green Kakadu от 06 Мая 2002, 17:05:53
Цитировать
полный от корня главного сервера

от корня, в этом то и проблема ;)
т.е. print "
";
на hut.ru не напишешь ;) т.к. после нажатия появится бодрое сообщение 404
Название: Имя выполняющегося скрипта.
Отправлено: YA от 06 Мая 2002, 21:46:07
А хостер это как-то комментирует?
Название: Имя выполняющегося скрипта.
Отправлено: Green Kakadu от 08 Мая 2002, 02:25:42
Цитировать
А хостер это как-то комментирует?

никак. у них там еще crypt "особенный" тоже не как у всех