Edilson Santiago Postado Julho 29, 2022 Denunciar Share Postado Julho 29, 2022 Olá, amigos, estou tentando uma "redefinição de senha", onde a página gera uma nova senha, envia essa senha por e-mail e em seguida faz update no banco de dados. Tá gerando a senha e enviando o email, mas não faz o update. Alguém pode ajudar? Segue meu código: <?php require_once '../conecta.php'; if(isset($_POST[ok])){ $email = ($_POST['email']); $sql = "SELECT * FROM usuarios WHERE email='$email'"; $result = mysqli_query($conn, $sql); $row = $result->fetch_assoc(); $total = count($row); if($total == 0){ echo '<script> alert ("Erro! E-mail não cadastrado.")</script>'; }else{ $novasenha = substr(sha1(time()), 0, 8); $nscriptografada = sha1(sha1($novasenha)); $to = $email; $subject = 'Nova Senha'; $message = "A nova senha é: $novasenha"; $headers = "MIME-Version: 1.1\r\n"; $headers .= "Content-type: text/plain; charset=UTF-8\r\n"; $headers .= "From: meuemail@dominio.com\r\n"; $headers .= "Return-Path: meuemail@dominio.com\r\n"; $envio = mail($to, $subject, $message, $headers); $sql = "UPDATE usuarios SET senha = $nscriptografada WHERE email = $email"; if ($conn->query($sql) === TRUE) { echo '<script> alert ("Sucesso")</script>'; } else { echo '<script> alert ("Erro. ")</script>'; } } } ?> <html lang="pt-br"> <head> <meta charset="utf-8"> <title>SGI - PAINEL DE CONTROLE - ALTERAR SENHA</title> <link type="text/css" rel="stylesheet" media="screen" href="estilos.css" /> <script type="text/javascript" language="javascript"> function valida_form(){ if(document.getElementById("email").value == ""){ alert('Por favor, digite o E-mail do usuário!'); document.getElementById("email").focus(); return false } } </script> </head> <body> <div style="text-align:center"><h2><font color="#ffffff">ESQUECI MINHA SENHA...</h2></font><br><br></div> <div id="form"> <form method="POST" action="" onsubmit="return valida_form(this)"> <label>Informe seu e-mail:</label><input value="<?php echo $_POST[email]; ?>" type="email" id="email" name="email" placeholder="Seu E-mail" maxlength="520"><br> <input type="submit" name="ok" value="SOLICITAR NOVA SENHA"><br> </form> </div> </body> </html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 lowys Postado Agosto 2, 2022 Denunciar Share Postado Agosto 2, 2022 (editado) Em 29/07/2022 em 19:15, Edilson Santiago disse: $sql = "UPDATE usuarios SET senha = $nscriptografada WHERE email = $email"; A senha é uma string. Strings devem ficar entre aspas: $sql = "UPDATE usuarios SET senha = '$nscriptografada' WHERE email = '$email'"; Editado Agosto 2, 2022 por lowys Citar Link para o comentário Compartilhar em outros sites More sharing options...
1 Edilson Santiago Postado Agosto 3, 2022 Autor Denunciar Share Postado Agosto 3, 2022 Realmente, era só as aspas. Funcionou. Muito obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Edilson Santiago
Olá, amigos, estou tentando uma "redefinição de senha", onde a página gera uma nova senha, envia essa senha por e-mail e em seguida faz update no banco de dados.
Tá gerando a senha e enviando o email, mas não faz o update.
Alguém pode ajudar? Segue meu código:
Link 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.