У меня есть экран входа в систему, но возникла проблема, при которой при вводе правильного имени пользователя и пароля возвращается «Не введено имя пользователя или пароль».
До этого работал корректно при использовании PHP v5, так что, должно быть, мне чего-то не хватает, чтобы обновить код?
//Start session
session_start();
$servername = "localhost";
$username = "db_root";
$password = "db_password";
$dbname = "db_name";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
//Validation error flag
$errflag = false;
//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
// Strip whitespace (or other characters) from the beginning and end of string
$str = @trim($str);
//Check for quotes, and remove them
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
//Remove special characters
return mysqli_real_escape_string($str);
}
//Sanitize the POST values
$login = clean($_POST['login']);
$password = clean($_POST['password']);
//Input Validations
if($login == '') {
$errflag = true;
}
if($password == '') {
$errflag = true;
}
//If there are input validations, redirect back to the login form
if($errflag) {
$_SESSION['ERRMSG'] = 'No username or password entered';
session_write_close();
mysqli_close($link);
header("location: login.php");
exit();
}
?>
Есть предложения?