PHP和MYSQL身份验证

时间:2017-01-08 07:25:14

标签: php mysql

我的登录功能不起作用,总是说用户名或密码不起作用。如果用户名和密码正确,我需要echo ok,所以我可以继续我的项目。我的db密码设置为md5。这是y代码:

user.php文件

<?php

<?php
function sanitize($username)//sanitizes user inputs
{ $connect = mysqli_connect('localhost','root','','lr'); 
return mysqli_real_escape_string
($connect,$username); } 
?>

//checks if user exist
function user_exists($username)
{ $username = sanitize($username);
    $conn = @mysqli_connect('localhost', 'root', '', 'lr') OR die("cant connect");

    $query = mysqli_query($conn, "SELECT user_id FROM users WHERE username = '$username'");
    return(mysqli_num_rows($query) ==1) ? true : false;
}


//checks if user active, if set in database to 1, its active, if set to 0, not active
function user_active($username)
{ $username = sanitize($username);
    $conn = @mysqli_connect('localhost', 'root', '', 'lr') OR die("cant connect");

    $query = mysqli_query($conn, "SELECT user_id FROM users WHERE username = '$username' AND active =1");
    return(mysqli_num_rows($query) ==1) ? true : false;
}

//Gets user id from username
function user_id_from_username ($username) {
        $username = sanitize ($username);
        return mysql_result(mysqli_query("SELECT `user_id` FROM `users` WHERE `username` = '$username'"), 0, 'user_id');
}
function login($username, $password){
        $user_id = user_id_from_username($username);

        $username = sanitize($username);
        $password = MD5($password);

        return (mysql_result(mysqli_query("SELECT COUNT(`user_id`) FROM `users` WHERE `username`='$username' AND `password`='$password'"), 0)==1) ? $user_id : false;
}



?>

login.php file


<?php
function sanitize($username)
{ $connect = mysqli_connect('localhost','root','','lr'); 
return mysqli_real_escape_string
($connect,$username); } 
?>

0 个答案:

没有答案