Barbyzita 0 Denunciar post Postado Março 4, 2010 Bom dia, programadores. Estou necessitando do auxílio de vcs para uma coisa q considerei simples, no entanto, estou tendo dificuldades infindáveis... :o É o seguinte: No site da empresa a qual estagio podemos recuperar a senha de login ao informarmos nosso e-mail. No entanto, eles querem trocar o e-mail pelo login mesmo, já que muitos clientes esquecem ou têm seu endereço eletrônico desativado. Bom, eu fui trocando as variáveis mas, sempre consta "Dados Incorretos". Gostaria q me ajudassem em relação a minha falta de atenção. Colocarei os códigos antigos e o q eu modifiquei, certo? Obrigada. Esse programa diz respeito ao formulário q fica no topo para, dentre outros serviços, recuperarmos a senha: topo_a.php <form action="logar.php" style="MARGIN: 0pt" method="post" name="login" id="login" onsubmit="return valida_login(this)"> <table width="486" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="30" height="56" background="img/login_1.jpg"> </td> <td width="425" valign="top" background="img/login_barra.jpg"><div align="left" style="margin-top:13px;"> <table width="421" border="0" cellspacing="2" cellpadding="0"> <tr> <td width="33"><div align="right" class="txt_login">Login:</div></td> <td width="92"><input name="logar_login" type="text" class="frm_senha2" id="logar_login" maxlength="25" /></td> <td width="36"><div align="right" class="txt_login">Senha:</div></td> <td width="92"><input name="logar_senha" type="password" class="frm_senha" id="logar_senha" maxlength="25" /></td> <td width="38"><input type="image" src="img/login_btok.jpg" border="0" name="BT" width="38" height="23" /></td> <td width="116"><div align="left"><a href="cadastre.php" class="link_esqueceusenha">Cadastre-se</a><br> <a href="javascript:pop('lembrar_senha.php',350,245);" class="link_esqueceusenha">Esqueceu a senha?</a></div></td> </tr> </table> </div></td> <td width="31" height="56" background="img/login_2.jpg"> </td> </tr> </table> </form> Esse é o meu, posto q criei uma cópia para testes. Modifiquei apenas a linha identificada por uma seta: _topo_a.php: </script> <form action="logar.php" style="MARGIN: 0pt" method="post" name="login" id="login" onsubmit="return valida_login(this)"> <table width="486" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="30" height="56" background="img/login_1.jpg"> </td> <td width="425" valign="top" background="img/login_barra.jpg"><div align="left" style="margin-top:13px;"> <table width="421" border="0" cellspacing="2" cellpadding="0"> <tr> <td width="33"><div align="right" class="txt_login">Login:</div></td> <td width="92"><input name="logar_login" type="text" class="frm_senha2" id="logar_login" maxlength="25" /></td> <td width="36"><div align="right" class="txt_login">Senha:</div></td> <td width="92"><input name="logar_senha" type="password" class="frm_senha" id="logar_senha" maxlength="25" /></td> <td width="38"><input type="image" src="img/login_btok.jpg" border="0" name="BT" width="38" height="23" /></td> <td width="116"><div align="left"><a href="cadastre.php" class="link_esqueceusenha">Cadastre-se</a><br> -------> <a href="javascript:pop('_lembrar_senha.php',350,245);" class="link_esqueceusenha">Esqueceu a senha?</a></div></td> </tr> </table> </div></td> <td width="31" height="56" background="img/login_2.jpg"> </td> </tr> </table> </form> Esse é o lembrar_senha.php: <? @include ("config/config.php"); $efet = $_GET['efet']; $erro = $_GET['erro']; if ($efet == "recuperar") { $email = $_POST['email']; @include("config/conecta.php"); $sql="SELECT * FROM usuarios WHERE usu_email='$email'"; $resultado = mysql_query($sql) or die ("Erro na instrução!"); $registro = mysql_num_rows($resultado); if ($registro <> 1) { echo "<script> location.href='lembrar_senha.php?erro=1'</script>"; } elseif ($registro == 1) { $user = mysql_fetch_array($resultado); $user_nome = $user["usu_nome"]; $user_login = $user["usu_login"]; $user_senha = $user["usu_senha"]; $user_senha = base64_decode($user_senha); $user_email = $user["usu_email"]; //***************envio da mensagem $de = "MIME-Version: 1.0\r\n"; $de .= "Content-Type: text/html; charset=utf-8\r\n"; $de .= "From: ESQUECEU SUA SENHA?<futura@futurainvestimentos.com.br>"; $corpo = "<style type='text/css'> (...) $assunto = "$user_login. Esqueceu sua senha?"; $destino = $user_email; mail($destino, $assunto, $corpo, $de); echo "<script> location.href='lembrar_senha.php?erro=2& user_login=$user_login'</script>"; //******************************** } } ?> (...) <form action="lembrar_senha.php?efet=recuperar" method="post" name="novo_usuario" id="novo_usuario" style="MARGIN: 0pt"> <table width="350" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> <tr> <td height="106" colspan="5" valign="top" background="img/lemb_senha_01.jpg"> </td> </tr> <tr> <td height="37" colspan="5"><div align="center" class="txt_preto"> <? if ($erro == 1) { echo "<div align='center' class='txterro'>Dados Incorretos!</div>"; } elseif ($erro == 2) { $user_login = $_GET['user_login']; echo "<div align='center' class='txterro'>Olá <strong>$user_login</strong>. <br>Seus dados foram enviados para seu email com sucesso!</div>"; } else { echo "<div align='center' class='txtdestaque'>Informe seu email corretamente!</div>"; } ?> </div></td> </tr> <tr> <td height="17" colspan="5" valign="top" background="img/lemb_senha_03.jpg"> </td> </tr> <tr> <td width="46" height="23" valign="top" background="img/lemb_senha_04.jpg"> </td> <td width="164" background="img/lemb_senha_05.jpg"><div align="left"><input name='email' type='text' class='Form_lembbb' id='email' size='33' maxlength='70' /> </div></td> (...) E o q eu modifiquei: _lembrar_senha.php: <? @include ("config/config.php"); $efet = $_GET['efet']; $erro = $_GET['erro']; if ($efet == "recuperar") { -----> $loginrecuperar = $_POST['loginrecuperar']; @include("config/conecta.php"); -----> $sql="SELECT * FROM usuarios WHERE usu_login='$login'"; $resultado = mysql_query($sql) or die ("Erro na instrução!"); $registro = mysql_num_rows($resultado); if ($registro <> 1) { echo "<script> location.href='lembrar_senha.php?erro=1'</script>"; } elseif ($registro == 1) { $user = mysql_fetch_array($resultado); $user_nome = $user["usu_nome"]; $user_login = $user["usu_login"]; $user_senha = $user["usu_senha"]; $user_senha = base64_decode($user_senha); $user_email = $user["usu_email"]; //***************envio da mensagem $de = "MIME-Version: 1.0\r\n"; $de .= "Content-Type: text/html; charset=utf-8\r\n"; $de .= "From: ESQUECEU SUA SENHA?<futura@futurainvestimentos.com.br>"; $corpo = "<style type='text/css'> (...) <body> <form action="lembrar_senha.php?efet=recuperar" method="post" name="novo_usuario" id="novo_usuario" style="MARGIN: 0pt"> <table width="350" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> <tr> <td height="106" colspan="5" valign="top" background="img/lemb_senha_01.jpg"> </td> </tr> <tr> <td height="37" colspan="5"><div align="center" class="txt_preto"> <? if ($erro == 1) { echo "<div align='center' class='txterro'>Dados Incorretos!</div>"; } elseif ($erro == 2) { $user_login = $_GET['user_login']; echo "<div align='center' class='txterro'>Olá <strong>$user_login</strong>. <br>Seus dados foram enviados para seu email com sucesso!</div>"; } else { ----> echo "<div align='center' class='txtdestaque'>Informe seu login corretamente!</div>"; } ?> </div></td> </tr> <tr> <td height="17" colspan="5" valign="top" background="img/lemb_senha_03.jpg"> </td> </tr> <tr> <td width="46" height="23" valign="top" background="img/lemb_senha_04.jpg"> </td> ------> <td width="164" background="img/lemb_senha_05.jpg"><div align="left"><input name='loginrecuperar' type='text' class='Form_lembbb' id='loginrecuperar' size='33' maxlength='70' /> </div></td> O banco de dados é esse, com seus referidos campos: usu_codigo, usu_foto, usu_nome, usu_login, usu_senha, usu_cpf, usu_endereco, usu_numero, usu_bairro, usu_complemento e etc. Enfatizo q, ao digitar o login, aparece sempre "Dados Incorretos!". Oq poderia vir a ser? Obrigada! Compartilhar este post Link para o post Compartilhar em outros sites
DesenvolvedorRoger 50 Denunciar post Postado Março 4, 2010 Olá Barbyzita ! Porquê você não depura dando um echo "$user_login" pra ver se os dados estão vindo do form de forma correta? A principio não seria complicado, pois nesse caso o que você deveria fazer seria tão somente mudar $email = $_POST['email']; para $usu_login = $_POST['usu_login']; e o WHERE de usu_email='$email' para user_login = '$user_login'. Qualquer coisa me ADD se puder que estou online no momento e posso te dar uma ajuda caso não consigas com essa dica. Se responder por agora estou por aqui ainda alguns minutinhos e posso te dar um retorno. att, Compartilhar este post Link para o post Compartilhar em outros sites
Barbyzita 0 Denunciar post Postado Março 4, 2010 Olá! N sei se ainda está conectado. De fato, é simples, mas n sei pq n está dando certo. Qual o seu MSN? Ah, só para enfatizar, eu já havia feito isso, como consta acima. ;) Compartilhar este post Link para o post Compartilhar em outros sites
DesenvolvedorRoger 50 Denunciar post Postado Março 4, 2010 Esqueci né ? É esse desenvolvedorroger@msn.com Ai agente conversa melhor ! Compartilhar este post Link para o post Compartilhar em outros sites
Barbyzita 0 Denunciar post Postado Março 4, 2010 Já enviei. :) Compartilhar este post Link para o post Compartilhar em outros sites