Ошибка HTTP_SERVER_VARS

Статус
В этой теме нельзя размещать новые ответы.

zsaz

Старатель
Регистрация
6 Авг 2007
Сообщения
251
Реакции
11
Вот лог апача, ругается на переменую.. че ему надо?? я так и не понял....

[Fri Aug 01 00:32:25 2008] [error] [client 195.46.98.121] PHP Notice: Undefined variable: HTTP_SERVER_VARS in /home/www/www.site.ru/structure/facultets/kafedra.php on line 21, referer: Для просмотра ссылки Войди или Зарегистрируйся



а вот 21 строчка в kafedra.php
print get_path_name($HTTP_SERVER_VARS['PHP_SELF']);
 
  • Заблокирован
  • #2
$HTTP_SERVER_VARS довольно давно является устаревшей и в новых версиях PHP по умолчанию не используется.
Замените на $_SERVER['PHP_SELF'].
 
а вобще че эта переменная делает вместе с PHP_SELF...
А то мне сказали, что она и вправду отключена, но в коде-то она есть, может зачем-то нужна.. а то так бы снести ее нафиг
 
Вообще именно эта содержит путь до файла.

Очень советую не использовать такие скрипты.. вообще :D
 
$HTTP_SERVER_VARS['PHP_SELF'] и $_SERVER['PHP_SELF'] - одно и тоже, просто в старых версиях PHP был $HTTP_SERVER_VARS, а в новых сократили до $_SERVER. Старое имя оставили для обратной совместимости, но начиная с PHP6 $HTTP_ в языке уже не будет.

$_SERVER['PHP_SELF'] - имя файла выполняемого скрипта относительно корня. То есть если выполняется скрипт по адресу _http://domain/test/test.php, то $_SERVER['PHP_SELF'] будет равен /test/test.php
 
Вот лог апача, ругается на переменую.. че ему надо?? я так и не понял....

[Fri Aug 01 00:32:25 2008] [error] [client 195.46.98.121] PHP Notice: Undefined variable: HTTP_SERVER_VARS in /home/www/www.site.ru/structure/facultets/kafedra.php on line 21, referer: Для просмотра ссылки Войди или Зарегистрируйся



а вот 21 строчка в kafedra.php
print get_path_name($HTTP_SERVER_VARS['PHP_SELF']);

Если не хочешь, что бы выводились PHP Notice
достаточно перед переменной поставить "собачку" @

Вот так:

а вот 21 строчка в kafedra.php
PHP:
@print @get_path_name(@$HTTP_SERVER_VARS['PHP_SELF']);
 
  • Заблокирован
  • #7
Плохой совет :) Ошибки надо исправлять, а не зарывать.
Хотя строчка сама по себе достаточно странная.
 
какая именно строчка странная???
и @ нафига нужна??? если я удалю переменную это то же самое что и собаку поставил?? че-то немного не понял с собакой...
а вобще если ее снести, то на производительность сайта это не скажется??? при условии, что данная переменная отключена??
 
@ отключает вывод ошибки.
 
и @ нафига нужна??? если я удалю переменную это то же самое что и собаку поставил?? че-то немного не понял с собакой...
а вобще если ее снести, то на производительность сайта это не скажется??? при условии, что данная переменная отключена??

@ нужно что бы скрыть ошибки, которые складываются в error.log или выводятся на экран Notice обычно (если нет переменной к примеру)

если удалить @ то на экран в случае возникновения ошибок будут показаны на экране

это не то же самое если ты удалишь переменную
если удалишь переменную то вероятно что то заглючит =)

если переменная "отключен" как ты пишешь то можешь удалять эту строчку вместо с собачкой :-]
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху