2014-12-21 2 views
-4

Когда я впервые перехожу на страницу, ничего не делая, я получаю эту ошибку ниже. Я не понимаю, почему, потому что я проверяю, нажата ли кнопка отправки.Ошибка печати кнопки формы без отправки

Примечание: Undefined индекс: имя пользователя в /Applications/XAMPP/xamppfiles/htdocs/kwame.php в строке 3

<? 

$user_name = $_POST['username']; 
$submit = isset($_POST['submit']); 


if($submit){ 

echo $user_name; 

} 

else { 
echo 'leave'; 
} 

?> 


<html> 
<head> 
<title> My Php Exercises </title> 
</head> 

<body> 
<FORM name='login' method='POST' action='kwame.php'> 

<input type='text' name='username' > 
<input type='submit' name='submit'> 


</FORM> 

</body> 
</html> 
+0

'если (пусто ($ _POST ['username'])) {$ user_name = $ _POST ['username']; } else {echo "имя пользователя не задано!"; } ' – Rizier123

+0

Вы должны проверить, является ли переменная' submit' isset. – Dorvalla

ответ

0

Вы не открываете PHP правильно. Использование:

<?php 

if(isset($_POST['submit'])){ 
$user_name = $_POST['username']; 
echo $user_name; 

} 

else { 
echo 'leave'; 
} 

?> 
0

Значение переменной массива php дает предупреждение при передаче данных ключа. Вы должны проверить, определена ли переменная для этого.

Определить, является ли переменная установлена ​​http://php.net/manual/en/function.isset.php

<?php 

if(isset($_POST['submit']) && isset($_POST['username'])){ 

    echo $_POST['username']; 

}else { 
    echo 'leave'; 
} 

?> 
0

вы должны использовать

if(isset($_POST['username'])) 
    {$user_name = $_POST['username'];} 
else 
    {$user_name = "";} 

instread 

Или вы можете просто перемещая линию ИНТ этой позиции:

if($submit) 
    {$user_name = $_POST['username']; 
    .... 
    } 
Смежные вопросы