Не передаются переменные! Проблема Undefined variable
Во всех старых руководствах по РНР написано, что даные, полученные из формы, или переданные по ссылке, вот так:
script.php?peremennaya=znachenie&variable=valueавтоматически становятся переменными PHP,
$peremennaya и $variableЭта информация устарела.
Дело в том, что в целях безопасности, начиная с версии 4.1, РНР настраивается по умолчанию так, чтобы переданные значения не назначались переменным.
Получить же переданное значение можно обратившись к соответствующему массиву.
Например:
Если передаем методом GET, обратившись к скрипту по ссылке вида
script.php?var=valueили отправив форму, указав в ней method="GET",
то все переменные содержатся в массиве
$_GET.echo $_GET['var']; напечатает "value".Если получаем данные из формы, отправленной методом POST, то все поля этой формы содержатся в массиве
$_POST. Допустим, в форме был элемент<input type="hidden" name="var" value="1">,то в скрипте, который указан в action формы, можно написать echo
$_POST['var']; и будет выведена 1.Поэтому, если вы уверены, что переменная есть, но вы не можете ее найти - ищите ее в суперглобальных массивах.
Подробнее о них можно почитать на русском языке в официальной документации
http://ru2.php.net/variables.predefined
То же касается и серверных переменных, таких, как
$REMOTE_ADDR, $PHP_SELF. Получить их можно, обратившись к массивам $_SERVER, $_ENV или функцией getenv - 
getenv('HTTP_REFERER');Переменные, зарегистрированные в сессии, следует искать в массиве
$_SESSION.Данные cookie содержатся в массиве $_COOKIE, сведения о закачанных файлах - в $_FILES
Переменные окружения - в $_ENV, а так же, существует массив $_REQUEST, в котором собраны данные из GET, POST и cookie.
Важно! Весьма в поисках переменных помогает одна их главных функций PHP -
phpinfo()ее следует применять всякий раз, когда вы "потеряли" переменную, вызовите
phpinfo(32); в скрипте, в котором не работает авторизация, в скрипте, который принимает файл при аплоаде - и все найдется!Все то же самое можно прочесть и в документации: http://www.php.net/manual/ru/security.globals.php

Написать комментарий
Пожалуйста, воздержитесь от посылки спама.
Сообщения, содержащие гиперссылки, проходят премодерацию.