Хостер не видит переменную

SlavikSG

Новичок
Хостер не видит переменную

Вот коротенький код рабочего скрипта:

<?php
//Хочу видеть все ошибки в своем скрипте
Ini_Set('error_reporting', E_ALL);

//Создаю крохотную форму с одним полем ввода
$Forma="
<form method='post' action='untitled.php'>
<input name='Imya' size='34' maxlength='50' value=''>
</form>";

//Вывожу эту форму на экран
Print "$Forma";
Print "<br>";

//Проверяю в переменной $Imya наличие данных
If ($Imya<>"")
{
Print $Imya;
Print "<br>";
Print "Все получилось. Ура, товарищи!!!";
}

?>

Так как я включил в начале скрипта "Показывать все ошибки", то первый запуск скрипта выдает небольшую ошибку:
"Notice: Undefined variable: Imya in N:\AppServ\www\proba\untitled.php on line 16"
там, где я пытаюсь проверять условие по наличию в переменной данных. Ошибка эта вылезает, потому что переменная пока еще скрипту не видна, то есть, не определена. Как только я ввожу хоть какие-то данные и нажимаю Enter, то ошибка пропадает, условие срабатывает, и все получается "Ок". Если выключить опцию Ini_Set('error_reporting', E_ALL); то при этом даже при первом запуске скрипта ошибка вылезать не будет. Но это ладно...

Вопрос в том, что это все замечательно работает у двух хостеров (PHP v5.x). И не работает у третьего хостера (вроде PHP v4.x). То есть, там я ввожу данные в поле и программа все равно и неизменно, выдает ошибку на переменной $Imya. Не пойму в чем дело. Я что-то не так пишу в этом скрипте? Или у хостера что-то криво работает.

Я новичок в ПХП, и потому не врубаюсь, что не так делаю. Помогите понять, плиииз!
 

AmdY

Пью пиво
Команда форума
начни с register_globals, узнаешь почему это плохо.
смени учебник.
полазь по этому сайту, здесь много интересного.
 

SlavikSG

Новичок
Автор оригинала: Апокалипсис
http://phpfaq.ru/globals
Ууу, блииин!
Что самое смешное, ведь только вчера читал эту самую статью и уже сегодня сделал ошибку.

Большое спасибо!
Переменная нашлась. Ессно, как и написано в ФАК-е. В служебном массиве. И писать нужно ее так $_POST['Imya'] а не так $Imya. И так же не стоит забывать применять условие If ($_SERVER['REQUEST_METHOD']=='POST')

Усе! Маленький скриптик заработал. Полез менять в основной проге. :)

Автор оригинала: AmdY ...смени учебник...
Учебник менять пока не буду. Я там уже на 10 главе. :)
 

Beavis

Banned
...
//Вывожу эту форму на экран
Print "$Forma";
Print "<br>";
$Imya = $_POST["Imya"];
//Проверяю в переменной $Imya наличие данных
If ($Imya<>"")
{
Print $Imya;
...

с VB на PHP чтоль перешел?))
 

AmdY

Пью пиво
Команда форума
Автор оригинала: SlavikSG
Так как я включил в начале скрипта "Показывать все ошибки", то первый запуск скрипта выдает небольшую ошибку:
"Notice: Undefined variable: Imya in N:\AppServ\www\proba\untitled.php on line 16"
там, где я пытаюсь проверять условие по наличию в переменной данных. Ошибка эта вылезает, потому что переменная пока еще скрипту не видна, то есть, не определена.
Beavis, ищо вопросы?
 

Zetruger

ivan.chistyakov.name
SlavikSG

If (isset($_POST['Imya']))
{
Print $_POST['Imya'];
Print "<br>";
Print "Все получилось. Ура, товарищи!!!";
}

isset - проверка на существование
 

SlavikSG

Новичок
Автор оригинала: Beavis
с VB на PHP чтоль перешел?))
Ну, типа, того... По мелочи:
Паскаль, ФохПро, Дельфи, Microsoft Access. И в голове каша. :)
Лучше бы я СИ в свое время долбил. А то уж больно синтаксис в PHP непривычный.

Автор оригинала: Zetruger
isset - проверка на существование
Ага. Пасиб! Постараюсь не забыть. :)
 
Сверху