Esqueci-me Da Senha Script
#16
Posted 10/04/2006, 17:02
Só volto por aqui talvez amanhã.. mais vai postando aí q te ajudamos.. h-lera aqui é show!
T+
Paulo Jr. PHP Development (Intermediary)
#17
Posted 12/04/2006, 04:53
Enfim veja se isso te ajuda ...
Parto do ponto que o user clicou no link ( Ex.: ESQUECI A MINHA SENHA ).
Aperece um form para ele digitar o endereço de email dele que está cadastrado no BD
Através deste email que o script buscará a senha dele no bd ... como já foi mencioando mais acima em outros posts.
Para facilitar este form além do email pode mandar mais um dado em um campo hidden... veja abaixo:
form.php
<form name="form1" method="post" action="recupera_senha.php">
<input name="email" type="text" >
<input name="recupera" type="hidden" value="recupera">
<input name="Submit" type="submit" value="Recuperar Senha!"></td>
</form>
Atente ao negrito ...
Continuemos...
O meliante entrou com o seu email no INPUT TEXT e enviou para o script abaixo:
recupera_senha.php
<?php include 'config.php'; /* Enfim sua conexão com o bd ... não me responsabilizo por má edição na sua sintaxe de conexão ... */ switch($_POST['recupera']){ default: include 'form.php'; break; case "recupera": recupera_senha($_POST['email']); // aplicando a função na conta de email enviada pelo form break; } function recupera_senha($email){ // função que fará o trabalho pesado if(!$email){ print "Você esqueceu de preencher seu email. <strong>Use o mesmo email que utilizou em seu cadastro.</strong><br />"; include 'form.php'; exit(); } $sql_check = mysql_query( "SELECT senha,usuario FROM tabela WHERE email='$email'" ) or die (mysql_error()); $sql_check_num = mysql_num_rows($sql_check); if($sql_check_num == 0){ print "O endereço não está cadastrado em nossa base de dados.<br />"; include 'form.php'; } // fecha if else{ $recupera = mysql_fetch_array($sql_check); $senha = $recupera[0]; $usuario = $recupera[1]; $subject = "Recuperando sua Senha!"; $message = "Olá, bla bla bl bla. Usuário: $usuario Senha: $senha bla bla bla"; mail( $email, $subject, $message, "From: Teu Site<teu email@teussite.com.br>" ); print "Sua senha foi enviada para o seu email cadastrado!<br /> Veja se não esquce da próxima vez mané ... rs*"; } // fecha else } // fecha função ?>
... está passível de erros ... não testei ... mas testa ae por favor.
Até mais
canaldev.com.br
sistemabasico.com.br
twitter.com/sistemabasico
twitter.com/lunelli
#18
Posted 12/04/2006, 09:20
<?php
$dbh=mysql_connect ("localhost", "username", "password") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("base_de_dados");
// A conecção que foi substituida por a de cima, que é a nativa do dreamwaver.<?php require_once('../../Connections/connConeccao.php'); ?>///
switch($_POST['recupera']){
default:
include 'recuperaForm.php';
break;
case "recupera":
recupera_senha($_POST['email']); // aplicando a função na conta de email enviada pelo form
break;
}
function recupera_senha($email){ // função que fará o trabalho pesado
if(!$email){
print "Você esqueceu de preencher seu email.
<strong>Use o mesmo email que utilizou em seu cadastro.</strong><br />";
include 'recuperaForm.php';
exit();
}
$sql_check = mysql_query(
"SELECT campo_user,campo_pass FROM tabela WHERE email='$email'"
) or die (mysql_error());
$sql_check_num = mysql_num_rows($sql_check);
if($sql_check_num == 0){
print "O endereço não está cadastrado em nossa base de dados.<br />";
include 'recuperaForm.php';
} // fecha if
else{
$recupera = mysql_fetch_array($sql_check);
$campo_pass = $recupera[0];
$campo_user = $recupera[1];
$subject = "Recuperando sua Senha!";
$message = "Olá, bla bla bl bla.
Usuário: $campo_user
Senha: $campo_pass
bla bla bla";
mail(
$email, $subject, $message, "From: Teu Site<webmaster@website.net>"
);
print "Sua senha foi enviada para o seu email cadastrado!<br />
Veja se não esquce da próxima vez mané ... rs*";
} // fecha else
} // fecha função
?>
Obrigado a todos que me ajudaram neste tópico em particular!
Bons Trabalhos
#19
Posted 12/04/2006, 10:57
Até mais
canaldev.com.br
sistemabasico.com.br
twitter.com/sistemabasico
twitter.com/lunelli
#20
Posted 12/04/2006, 21:15
Que bom que funcionou e para complementar ... vc pode enviar esse email com usuário e senha parao destinatário em formato HTML .... isso vc encontra aqui mesmo no fórum de php ... como fazer ... e aos montes.
Sim. sim eu fiz exactamente isso, adpatei à minha maneira e ele envia todos os dados ao usuário (nome, email, pass, user e todos os dados que estão no bd) para o seu email, inclui os $headers etc.
Formatei a fonte, inclui uma opção fechar janela, na página de confirmação ou seja na mensagem de sucesso menciona para onde foi os dados mencionando o email do usuário .
O meu problema era mesmo a conecção a sua mensagem de (não responsabilizo pela sintaxe do conf.php) fez-me abrir os olhos e daí o clique ah é isso mesmo...
Bom o meu muito obrigado mais uma vez.
Acho que este script havia de estar na área dos turturiais e/ou dúvidas dos script prontos visto que nenhum funciona (pelo menos não consegui, mas provavelmete era pelo motivo da conecção) se for necessário posso disponibilizar já todo formatado e direitinho (obviamente com os seus créditos) pois bem merceu.
OBRIGADO A TODOS OS QUE ME AJUDARAM NESTE TÓPICO.
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)