我正在尝试为我的网站创建一个rememberme登录系统,但是我遇到了一个关于未定义索引的错误。
从测试到目前为止,我已经经历了以下结果。
当我在表单中输入任何内容,即保留密码和用户名空白时,我会收到正确的错误“请输入用户名和密码”。 - 这是唯一可行的!
当我输入错误的用户名和密码时,我会被重定向到该文件 的login.php
最后,当我输入正确的用户名和密码时,我收到错误消息
“注意:未定义的索引:第17行的E:\ wamp \ www \ myphpsite \ login.php中的密码”
与“不正确的用户名/密码组合。”。
一起使用 <?php
include 'functions.php';
if (isset($_POST['login'])){
$username = $_POST['username'];
$password = $_POST['password'];
if (isset($_POST['rememberme']))
$rememberme = $_POST['rememberme'];
if ($username && $password){
$login = mysql_query("SELECT * FROM php_customer WHERE username='$username'");
while ($row = mysql_fetch_assoc($login)){
$db_password = $row['password'];
if ($password == $db_password)
$loginok = TRUE;
else
$loginok = FALSE;
if ($loginok == TRUE){
if($rememberme == "on")
setcookie("username", $username, time()+7200);
else if ($rememberme == "")
$_SESSION['username'] = $username;
header("Location: userarea.php");
exit();
}else{
die("Incorrect username/password combination.");
}
}
}
else
die("Please enter a username and password.");
}
?>
以上是我在loginpage.php文件中包含的login.php文件的代码。
我已经尝试过使用isset()函数,但这似乎不起作用。
HTML:
<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form method="POST" action="login.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="username" type="text" id="username"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="password" type="text" id="password"></td>
</tr>
<tr>
<td><input name="rememberme" type="checkbox" id="rememberme"></td>
<td></td>
<td>Remember me </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="login" value="Log in"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
答案 0 :(得分:1)
要回答您的初始问题,您的数据库似乎没有名为password的列。这是根据代码在第17行失败的事实确定的。
此外,您的脚本存在多个安全漏洞。
答案 1 :(得分:1)
好的,我觉得很傻。问题是密码字段是用大写字母P写的 所以密码而非密码
现在一切正常
答案 2 :(得分:0)
我认为你应该检查你的mysql表是否有“密码”字段......