Неопределенная ошибка индекса, но работает, когда я использую $_REQUEST

Я новичок в PHP. Я пытаюсь сделать простую форму входа пользователя. Вот мой код для loginpage.php

<html>
<form action="login.php" action="POST">
username<input type='text' name="username"><br>
password<input type='password' name="pass"><br>
<input type='submit' name='login'>


</form>
</html>

Теперь другая страница login.php

<?php 
    $username= $_POST["username"];
?>

И это дает мне сообщение об ошибке: Неопределенный индекс: имя пользователя в H:\xampp\htdocs\login.php в строке 2


person Gagan Singh    schedule 09.10.2012    source источник


Ответы (5)


Изменять--

<form action="login.php" action="POST">

TO

<form action="login.php" method="POST">
person swapnesh    schedule 09.10.2012

Вы можете использовать функцию php isset(), например

if(isset($_POST['username']))
{
  $username=$_POST['username'];
}
person Hkachhia    schedule 09.10.2012

изменить эту строку

из

<form action="login.php" action="POST">

to

<form action="login.php" method="POST">
person Satya    schedule 09.10.2012

Изменить это

<form action="login.php" action="POST">

to

<form action="login.php" method="POST">

И попробуй это

if(isset($_POST["username"])){

     $username= $_POST["username"];

 }
person iLaYa ツ    schedule 09.10.2012
comment
У вас тут две проблемы. 1. Его кнопка отправки называется login, а не submit и 2. Вы не должны определять, отправлена ​​ли форма, основываясь на наличии значения кнопки отправки, потому что некоторые браузеры (а именно IE) не отправляют значение кнопки отправки в виде $_POST данных. если пользователь нажал клавишу ввода для отправки. Используйте $_SERVER['REQUEST_METHOD']=='POST' или isset() в имени пользователя и пароле. - person MrCode; 09.10.2012

Вы должны установить:

method="POST"

и не

action="POST"

Если вы не установите его, будет использоваться метод GET. Вы можете получить к нему доступ с помощью $_REQUEST, поскольку он имеет доступ как к переменной POST, так и к переменной GET.

person Zagorax    schedule 09.10.2012