Bom dia amigos, estou com um código que faz a recuperação de senha do usuário, estou tentando fazer que quando o usuário coloca o e-mail dele, o script faça primeiro uma busca no banco para saber se o e-mail existe, se existir, o código segue e envia uma senha redefinida para o e-mail do mesmo, caso não exista exiba uma mensagem de "email inexistente". O que acontece, até tentei de várias e várias maneiras mas todas sem sucesso, crio a condição, mas mesmo colocando um email errado e um correto o resultado é o mesmo, "email inexistente". Segue código:
<?php
include("config.php");
$cnx = mysql_connect($DB_SERVER, $DB_USER, $DB_PASS)ordie("Could not connect: ". mysql_error());
mysql_select_db($DB_NAME, $cnx);
$email = $_POST["email"];
$consulta = mysql_query("SELECT email FROM cliente WHERE email = $email");
$dados = mysql_fetch_assoc($consulta);if($dados['email']!== $email){
echo "email não encontrado!";}else{function random_password( $length =8){
$chars ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_-=+;:,.?";
$password = substr( str_shuffle( $chars ),0, $length );return $password;}
$senha = random_password(8);
$novaSenha = $senha;
$senhaCodificada = hash('sha256', $senha);
$query ="UPDATE cliente SET senha = '".$senhaCodificada."' WHERE email = '".$email."'";
$texto ="Sua nova senha é:".$novaSenha;
$headers ="MIME-Version: 1.1\r\n";
$headers .="Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .="From: contato.tecsat@gmail.com\r\n";// remetente
$envio = mail($email,"Recuperação de Senha", $texto, $headers);if($envio)
echo "Mensagem enviada com sucesso";else
echo "A mensagem não pode ser enviada";}//?>
Já tentei:
$consulta = mysql_query("SELECT id FROM cliente WHERE email = $email");
$consulta = mysql_query("SELECT email FROM cliente");
$consulta = mysql_query("SELECT id FROM cliente WHERE email = $email ");
entre outras tentativas, também já tentei com mysql_num_rows mas sem sucesso também.
Pergunta
smsoousa
Bom dia amigos, estou com um código que faz a recuperação de senha do usuário, estou tentando fazer que quando o usuário coloca o e-mail dele, o script faça primeiro uma busca no banco para saber se o e-mail existe, se existir, o código segue e envia uma senha redefinida para o e-mail do mesmo, caso não exista exiba uma mensagem de "email inexistente". O que acontece, até tentei de várias e várias maneiras mas todas sem sucesso, crio a condição, mas mesmo colocando um email errado e um correto o resultado é o mesmo, "email inexistente". Segue código:
Já tentei:
entre outras tentativas, também já tentei com mysql_num_rows mas sem sucesso também.
Se alguém puder me ajudar fico muito agradecido.
até mais!
Editado por smsoousaLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.