2012-10-09 52 views
0

我是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行

回答

0

您应该设置:

method="POST"

而不是

action="POST"

如果不设置它,它采用了GET方法。您可以使用$_REQUEST访问它,因为它可以访问POSTGET变量。

1

更改此

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

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

并尝试这个

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

    $username= $_POST["username"]; 

} 
+1

这里有两个问题。 1.他的提交按钮被命名为'login''''''' submit''和2.您不应该确定是否提交表单是否存在提交按钮值,因为某些浏览器(即IE)不会发送提交按钮值作为'$ _POST'数据,如果用户按下回车键提交。在用户名和密码上使用'​​$ _SERVER ['REQUEST_METHOD'] =='POST''或'isset()'。 – MrCode

+0

@ MrCode更新 –

1

改变这一行

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

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

您可以使用PHP isset()函数功能类似

if(isset($_POST['username'])) 
{ 
    $username=$_POST['username']; 
} 
1
<form action="login.php" **action**="POST"> 

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

Change--

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

TO

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