Erro (Sistema de autenticação de usuários em PHP)
24/08/2017
0
Estou aprendendo fazer um Sistema de autenticação de usuários em PHP, estou seguindo as instruções do artigo: Link do Artigo
Após terminar o sistema ele esta me apresentando o erro: Fatal error: Uncaught Error: Call to undefined function mysql_query()
Linha do erro:
Meu Código:
Se alguém puder me explicar onde errei agradeço :D
Após terminar o sistema ele esta me apresentando o erro: Fatal error: Uncaught Error: Call to undefined function mysql_query()
Linha do erro:
$result_id = @mysql_query($SQL) or die("Erro no banco de dados!");
Meu Código:
<?php require "comum.php"; session_start(); // Recupera o login $login = isset($_POST["login"]) ? addslashes(trim($_POST["login"])) : FALSE; // Recupera a senha, a criptografando em MD5 $senha = isset($_POST["senha"]) ? md5(trim($_POST["senha"])) : FALSE; // Usuário não forneceu a senha ou login if(!$login || !$senha){ echo "Você deve digitar sua senha e login!"; exit; } /** *Executa a consulta no banco de dados *Caso o número de linhas retornadas seja 1 o login é válido *Caso 0, inválido **/ $SQL = "SELECT id, nome, login, senha, postar FROM aut_usuarios WHERE login = ". $login .""; $result_id = @mysql_query($SQL) or die("Erro no banco de dados!"); $total = @mysql_num_rows($result_id); // Caso o usuário tenha digitado um login válido o número de linhas será 1.. if($total){ // Obtem os dados do usuário, para poder verificar a senha e passar os demais dados para a sessão $dados = @mysql_fetch_array($result_id); // Agora verifica a senha if(!strcmp($senha, $dados['senha'])){ // Tudo OK! Agora, passa os dados para a sessão e direciona o usuário $_SESSION['id_usuario'] = $dados['id']; $_SESSION['nome_usuario'] = stripslashes($dados['nome']); $_SESSION[permissao] = $dados['postar']; header("location: index.php"); exit; } // Senha inválida else{ echo "Senha inválida!"; exit; } } // Login inválido else{ echo "O login fornecido por você é inválido!"; exit; } ?>
Se alguém puder me explicar onde errei agradeço :D
Lucas Guedes
Curtir tópico
+ 0
Responder
Post mais votado
24/08/2017
Alterei as linhas 27 e 28
Para:
Agora esta aparecendo o erro: Erro no banco de dados!
Porém verifiquei e esta tudo certo.
$result_id = @mysql_query($SQL) or die("Erro no banco de dados!"); $total = @mysql_num_rows($result_id);
Para:
$result_id = @mysqli_query($SQL) or die("Erro no banco de dados!"); $total = @mysqli_num_rows($result_id);
Agora esta aparecendo o erro: Erro no banco de dados!
Porém verifiquei e esta tudo certo.
$SQL = "SELECT id, nome, login, senha, postar FROM aut_usuarios WHERE login = ". $login .""; $result_id = @mysqli_query($SQL) or die("Erro no banco de dados!"); $total = @mysqli_num_rows($result_id);
Lucas Guedes
Responder
Mais Posts
24/08/2017
Ygor Leal
Aqui vai um exemplo do meu login.
if (!empty($_POST) AND (empty($_POST['mail']) OR empty($_POST['password']))) { header("Location: ../../index.php"); exit; // RETORNA SE ESTIVER EM BRANCO } $result = $mysqli->query("SELECT * FROM `users` WHERE `mail` = '$my_mail' AND `password`= '$my_password'"); $resultados = mysqli_fetch_array($result); if(mysqli_num_rows ($result) > 0) { $mysqli->query("UPDATE users SET last_online = '$today' WHERE `mail` = '$my_mail'"); // ULTIMO LOGIN $mysqli->query("UPDATE users SET ip_last = '" . $_SERVER['REMOTE_ADDR'] . "' WHERE `mail` = '$my_mail'"); // ULTIMO IP $_SESSION['id'] = $resultados['id']; $_SESSION['password'] = $my_password; header('location: ../../main/home'); } else { unset ($_SESSION['mail']); unset ($_SESSION['password']); header('location: ../../index.php?p=fail'); // RETORNA SE ESTIVER ERRADO }
Responder
Clique aqui para fazer login e interagir na Comunidade :)