我正在编写一个登录系统,我正在编写的 php 代码没有错误消息,当我使用错误的密码时,仍然没有错误或成功消息。我有一种感觉,PHP 没有读取 SQL,但你们中的哪一位能指出这一点并告诉我如何解决它吗?
<?php
$accounts = mysql_connect("localhost" , "root" , "placeholder") or die (mysql_error());
$loginname = $_POST['loginname'];
$password = $_POST['password'];
$needle = '@';
$search = strpos($loginname, $needle);
if ( isset($loginname) )
{
mysql_select_db("nematznetwork", $accounts);
//$username = "test <br>";
//$password = 'pass';
//$accounts;
//echo $loginname . "<br>";
//echo $password;
if($search === FALSE)
{
//USERNAME
$username = $loginname;
$usernamesql = "SELECT * FROM users WHERE username='" . $username . "'";
$usernameresults = mysql_query($usernamesql, $accounts);
while($usernamerow = mysql_fetch_array($usernameresults))
{
$usernamecorrect = 'yes';
$dbpassword = $usernamerow['password'];
}
}
else
{
//EMAIL
$email = $loginname
$emailsql = "SELECT * FROM users WHERE email='" . $email . "'";
$emailresults = mysql_query($emailsql, $accounts);
while($emailrow = mysql_fetch_array($emailresults))
{
$usernamecorrect = 'yes';
$dbpassword = $emailrow['password'];
}
}
if($dbpassword == $password)
{
//COOKIE GOES HERE
//NO COOKIE YET
}
else
{
//PASSWORD ERROR GOES HERE
$error = 'true';
}
}
else
{
//NO USER NAME VARIABLE GOES HERE
$error = 'true';
}
if ( isset($usernamecorrect) )
{
}
else
{
//WRONG USER NAME VARIABLE GOES HERE
$error = 'true';
}
if ( isset($error) )
{
//ERROR MESSAGE FOR INCORRECT USERNAME/EMAIL/PASSWORD
echo "<script type='text/javascript'>\n";
echo "alert('The Username/Email or Password you entered was incorrect.');\n";
echo "window.location = “http://www.google.com;\n";
echo "</script>";
}
else
{
}
?>