Я использую несколько функций, чтобы регистрировать пользователей на веб-сайте. Я первый сделал вход(), который выглядит следующим образом:Ошибка mysql_result внутри функции
function login($username, $password){
$id = user_id_from_username($username);
$username = sanitize($username);
$password = md5($password);
return (mysql_result(mysql_query("SELECT COUNT(`id`) FROM `users` WHERE `username` = '$username' AND `password` = '$password'"), 0) == 1) ? $id : false;
}
Как вы можете видеть на второй линии функции она вызывает другую функцию user_id_from_username. Это выглядит следующим образом:
function user_id_from_username($username) {
$username = sanitize($username);
return mysql_result(mysql_query("SELECT `id` FROM `users` WHERE `username` == '$username'"), 0, `id`);
}
Теперь, когда я использую функцию входа в систему я получаю предупреждение о том, следующее:
Предупреждение: mysql_result(): поставляется аргумент не является допустимым MySQL результаты ресурс в ... /users.php on line 62
Это ссылка на mysql_result в операторе return user_id_from_username. Это приводит к неправильной работе входа.
Я не могу решить это предупреждение. Вы, ребята, видите что-то не так?
Большое спасибо!
Что говорит 'mysql_error' после вызова' mysql_query'? –
Вам не любопытно было проверить ** настоящий ** запрос, отправленный в БД? – zerkms
Я не использовал mysql_error. Как я могу использовать это для печати ошибки? – RightLeftRight12