Kanzen 0 Denunciar post Postado Outubro 17, 2009 Pessoal, estou com problemas no arquivo que faz a alteração de senha dos membros cadastrados mudar_pass.php <?php if (!isset($_SESSION)) session_start(); if (!isset($_SESSION['UsuarioID'])) { session_destroy(); header("Location: index.php"); exit; } ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Alterar Senha</title> </head> <body> <center> <form action="mudar_pass2.php" method="post"> <img src='img/logo.png' /> <table align="center"> <tr><td>Senha Atual</td><td><input type="password" id="oldpass" /></td></tr> <tr><td>Nova Senha</td><td><input type="password" id="newpass" /></td></tr> <tr><td>Repita a Senha</td><td><input type="password" id="confpass" /></td></tr> <tr><td></td><td><input type="submit" value="Alterar" /></td></tr> </table> </form> <p><a href='admin.php'a><strong>Voltar</strong></a></p></center> </body> </html> mudar_pass2.php <?php if (!isset($_SESSION)) session_start(); if (!isset($_SESSION['UsuarioID'])) { session_destroy(); header("Location: index.php"); exit; } ?> <html><head><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' /> <?php if (!empty($_POST) AND (empty($_POST['newpass']) OR empty($_POST['confpass']) OR empty($_POST['oldpass']))) { echo "<center><img src='img/logo.png' /><p>Os campos não foram preenchidos corretamente!</p>"; echo "<p><a href='mudar_pass.php'a>Voltar</a></p></center>"; } else { $old = $_POST['oldpass']; $new = $_POST['newpass']; $conf = $_POST['confpass']; include ('conec.php'); $declar = "SELECT pass FROM professor WHERE professores = '".$_SESSION['UsuarioNome']."'"; $query = mysql_query($declar) or die(mysql_error()); if (mysql_result($query,0) != $old) { echo "<center>A senha atual está incorreta!<p><a href='mudar_pass.php'a>Voltar</a></p></center>";} else { if ($new = $conf){ $declar2 = "SELECT ID FROM professor WHERE professores = '".$_SESSION['UsuarioNome']."'"; $query2 = mysql_query($declar2) or die(mysql_error()); $ID = mysql_result($query2,0); $sql = "SELECT * FROM professor WHERE ID = '".$ID."'"; $qr = mysql_query($sql) or die(mysql_error()); $new = sha1($new); $sql2 = "UPDATE professor set pass='$new' WHERE ID = '".$ID."'"; $qr2 = mysql_query($sql2) or die(mysql_error()); if ($qr2){ echo "<center><img src='img/logo.png' /><p>Senha alterada com sucesso!</p><p><a href='admin.php'><strong>Voltar</strong></a></p> </center>";} else {echo "<center><img src='img/logo.png' /><p>Houve um erro! A senha não foi alterada!</p><p><a href='admin.php'><strong>Voltar</strong></a></p> </center>"; } }} ?> se alguém puder me ajudar =D Compartilhar este post Link para o post Compartilhar em outros sites
vinicvo 4 Denunciar post Postado Outubro 17, 2009 Cara, você tem que postar seu erro, o que tá acontecendo. Se o browser mostrar alguma mensagem de erro, posta aí também. Compartilhar este post Link para o post Compartilhar em outros sites
Kanzen 0 Denunciar post Postado Outubro 17, 2009 Olha eu acabei de dar um limpada no código <?php if (!isset($_SESSION)) session_start(); if (!isset($_SESSION['UsuarioID'])) { session_destroy(); header("Location: index.php"); exit; } ?> <html><head><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' /> <?php if (!empty($_POST) AND (empty($_POST['oldpass']) OR empty($_POST['newpass']) OR empty($_POST['confpass']))) { echo "<center><img src='img/logo.png' /><p>Os campos não foram preenchidos corretamente!</p>"; echo "<p><a href='mudar_pass.php'a>Voltar</a></p></center>"; } else { $old = $_POST['oldpass']; $new = $_POST['newpass']; $conf = $_POST['confpass']; include ('conec.php'); $declar = "SELECT pass FROM professor WHERE professores = '".$_SESSION['UsuarioNome']."'"; $query = mysql_query($declar) or die(mysql_error()); if (mysql_result($query,0) != $old) { echo "<center>A senha atual está incorreta!<p><a href='mudar_pass.php'a>Voltar</a></p></center>"; exit;} if ($new = $conf){ $new = sha1($new); $sql2 = "UPDATE professor set pass='$new' WHERE professores = '".$_SESSION['UsuarioNome']."'"; $qr2 = mysql_query($sql2) or die(mysql_error()); if ($qr2){ echo "<center><img src='img/logo.png' /><p>Senha alterada com sucesso!</p><p><a href='admin.php'><strong>Voltar</strong></a></p> </center>";} else { echo "<center><img src='img/logo.png' /><p>Houve um erro! A senha não foi alterada!</p><p><a href='admin.php'><strong>Voltar</strong></a></p> </center>"; } } } ?> O problema está sendo que não importa o q eu escreva no formulario ele retorna com a msg "A senha atual está incorreta!" Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Outubro 17, 2009 Olha, faça o seguinte. $declar = "SELECT pass FROM professor WHERE professores = '".$_SESSION['UsuarioNome']."'"; $query = mysql_query($declar) or die(mysql_error()); echo 'A senha do banco é '.mysql_result($query,0).' e a senha digitada é '.$old; if (mysql_result($query,0) != $old) Veja se aparecem iguais. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
Kanzen 0 Denunciar post Postado Outubro 17, 2009 pessoal obrigado pela ajuda, mas eu rescrevi o código inteiro e agora parece estar tudo OK. Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Outubro 18, 2009 Kanzen, que bom que resolveu. Seria interessante que você postasse como ficou o código corrigido, para ajudar alguém no futuro com o mesmo problema. Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites