Tham số đăng nhập giống nhau cho cả email và tên người dùng. Không chính xác sai nếu bạn có một hộp đăng nhập duy nhất chấp nhận.
Bạn có thể đặt điều kiện trong chính truy vấn nếu bạn không chắc đó là email hay tên người dùng.
$login=$_REQUEST['login'];
$query = "select * from user_db where ( username='$login' OR email = '$login') and password='$password'"
Chỉnh sửa: Một giải pháp giống như PDO ngày nay được ưa thích hơn nhiều vì giải pháp ở trên là đối tượng của SQL injection. Logic vẫn như cũ, nhưng bạn sẽ có nó trông giống như sau:
$query = "
SET @username = :username
SELECT * FROM user_db
WHERE ( username = @username OR email = @username)
AND password = :password
";
$statement = $pdoObject->prepare($query);
$statement->bindValue(":username", $login, PDO::PARAM_STR);
$statement->bindValue(":password", $password, PDO::PARAM_STR);
$statement->execute();