我的登录功能不起作用,总是说用户名或密码不起作用。如果用户名和密码正确,我需要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); }
?>