Не работает php как должен (

  • Автор темы alex A. Kh.
  • Дата начала

alex A. Kh.

Guest
Не работает php как должен (

Всем привет,
______
php версии 4.3.10
apache 1.3.33
OC WinXP Prof eng license
______

не подскажите почему так:
написал в файле index.php след. код:
<HTML>
<HEAD>
<TITLE>Запрос информации</TITLE>
</HEAD>
<BODY>
PHP:
<? 
if ($_SERVER['REQUEST_METHOD']=='POST')
{
    if (!$name) $err.="Вы забыли написать свое имя<br>"; 
    if (strlen($name) > 30) $err.="Длина имени не может превышать 30 символов.<br>";
}
?>
<TABLE WIDTH = 400>
<TR>
<TD>
PHP:
<? if ($err) echo '<font color=red><b>'.$err.'</b></font>'; ?>
<FORM action="
PHP:
<? echo $_SERVER['PHP_SELF'] ?>
" method="POST">
Имя*:<BR> <INPUT TYPE="text" NAME="name" SIZE="30" MAXLENGTH="30" value="
PHP:
<? echo $_POST['name'] ?>
" >
<P> <INPUT TYPE="submit" name="submit" VALUE="Зарегистрироваться">
</FORM>
</TD></TR>
</TABLE>
</BODY>
</HTML>
_____

так вот, если в условии проверки формы самой себя не вставить
PHP:
$name=$_POST['name'];
условие на $name не проверяется, т.е. он не понимает что такое $name, если эту переменную не определить, хотя должно, почему так ?

заранее спасибо
 

WeirD

Новичок
Оно и не должно.
register_globals, по видимому, отключен, что есть хорошо.
 

alex A. Kh.

Guest
Ну блин, читал этот фак, но давно, даже мысли не промелькнуло в больной голове, уже второй день ищу ошибку в скрипте, а оно вон дело то в чём ( весь код скрипта пришлось срезать до того, что Вы видели, блин, спасибо мужики, вобщем лучше все переменные вытаскивать из массива $_POST и не париться ?
 

Фанат

oncle terrible
Команда форума
совершенно верно.
там, кстати, так и написано.
может быть, тебе его ещё раз перечитать?
 

alex A. Kh.

Guest
нет, читать повторно не надо, я понял, но на всякий решил удостовериться и уточнить у профи 9-) правильно ли я понял. спасибочки.
 
Сверху