Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

*Michelle*

Alterar Senha de Usuário

Recommended Posts

Olá pessoal.Estou precisando fazer uma página em que o usuário possa alterar a senha cadastrada no banco pelo administrador. Por exemplo, ao logar-se os usuários de níveis diferentes são direcionados para páginas diferentes e logo no primeiro acesso ele deve entrar na página de Alteração de Senha e cadastrar uma senha nova que substituirá a senha antiga no banco MySQL.Peço a ajuda de vocês, pois sou iniciante em PHP e estou tomando uma surra nessa implantação de Intranet na empresa. Já pesquisei na internet mas não achei nenhum código com informações completas.Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente, bem-vinda ao fórum http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Não estou certo se te entendi bem, mas parece simples: utilize os campos conforme necessário (login, senha atual e nova senha) e, ao submeter, verifique se a senha atual confere com a que está no banco e, caso verdadeiro, faça a alteração no registro. Do contrário, exiba uma mensagem de retorno.

 

Se for necessário a alteração de senha por todos os novos usuários, é importante ter um campo para identificar se a senha foi alterada. Pode ser um campo do tipo ENUM, como por exemplo, confirmacao. Esse campo então é 'N' quando cadastrado pelo administrador e o usuário, ao logar, cai na tela do formulário, altera a senha e o campo recebe o valor 'S'.

 

Qualquer coisa, posta aí.

Bons estudos http://forum.imasters.com.br/public/style_emoticons/default/graduated.gif

 

Anderson Mello

Compartilhar este post


Link para o post
Compartilhar em outros sites

michelle...so pra reiterar o q o anderson colocou....aqui fiz algo parecido com oq você quer....ex.:qdo ha um novo usuario no sisema o campo "user" e "password" no login da intranet recebem o mesmo valor (com md5) de acordo com cada usuario...no primeiro login o usuario entra com esses dados...o sistema identifica a codificaco nos campos e redireciona para uma tela de alteração de senha....duvidas o forum ta ai....vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fico agradecida pela ajuda mas acho que não expliquei muito bem qual o meu problema.

Eu tenho uma tela onde o usuário informa o login e a senha para entrar na página de Intranet da empresa. Depois de validado o acesso, aparece a tela da Intranet de acordo com cada nível de usuário. Nessa tela, logo embaixo tem um link para uma página onde o usuário pode alterar sua senha, digitando a senha atual e uma nova senha. Eu preciso que essa nova senha substitua a senha que consta no banco de dados, sem que necessariamente seja no primeiro acesso.

Eu achei um exemplo num fórum mas não está funcionando.

Peço a ajuda de vocês, por favor. Quem puder me ajudar ficarei muito agradecida.

 

TelaTrocaSenha.html

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><link rel="SHORTCUT ICON" href="imagens/icone.ico" type="image/x-icon"><title> Laboratórios Bagó do Brasil </title><link rel="stylesheet" type="text/css" href="estilo.css"><!--[IF IE]><link rel="stylesheet" type="text/css" href="estilo_ie.css"><!--[END IF]--></head><body><div id="main">	<div style="height: 400px;">				<div id="cabecalho" style="margin: 10px 0px 0px 8px;">			<img src="imagens/cabeca1.jpg" style="float: left; margin-right: 5px;">			<div id="cabecalho_titulo">				<img src="imagens/cabecad.jpg"> INTRANET			</div>			<img src="imagens/cabeca2.jpg">		</div>		<div id="full"><span class="titulo_pagina">ALTERAR SENHA</span>			<p class="texto">Informe sua senha atual e a nova senha.</p>			<hr size="1" color="#CCCCCC" width="100%" align="center">			<form name="form1" "POST" ACTION="TrocaSenha.php?$acao=1">		<table>			<tr>			<td width="200"><label for="nome" class="texto" style="width: 200px; border: solid 0px">Login:</label><BR>			<input type="text" name="txLogin" style="form_campo"><BR><BR></td>			</tr>						<tr>			<td width="200"><label for="senha" class="texto" style="width: 200px; border: solid 0px">Senha Atual:</label><BR>			<input type="password" name="pwSenha" style="form_campo"><BR><BR></td>			</tr>						<tr>			<td width="200"><label for="senha" class="texto" style="width: 200px; border: solid 0px">Nova Senha:</label><BR>			<input type="password" name="pwSenha2" style="form_campo"><BR><BR></td>			<td><label for="senha" class="texto" style="width: 300px; border: solid 0px">Confirma Nova Senha:</label><BR>			<input type="password" name="pwSenha3" style="form_campo"><BR><BR></td>			</tr>			<tr  valign="middle">			<td width="200"><input type="reset" name="cmdcomando1" value="Limpar" width="20%">				  <INPUT TYPE="hidden" NAME="btnLogar" VALUE="ExecutaLogin">			<input type="image" src="imagens/okbutton.jpg"></td>			</tr>			</table>	   			</form>	</div>	</div><p>		<div id="global2">		<div id="menu_global">			<img src="imagens/vr.jpg" align="absmiddle"><a href="index.html" class="linq_global">Lembrar Senha</a>			<img src="imagens/vr.jpg" align="absmiddle"><a href="logout.php" class="linq_global">Logout</a>		</div>		</div></div></body></html>
TrocaSenha.php

 

<?phpif ($acao==1){if ($senha<>$confsenha){	$erro=1;} else {	$erro=0;}$host = "  ";$username = "  ";$password = "  ";$bd = "  ";$conexao = @mysql_connect($host, $username, $password);$banco = @mysql_select_db($bd, $conexao);$ssql= "SELECT * FROM tb_usuarios_intranet WHERE senha = encrypt('$senha',senha) and id ='$usuario'"if (!$query){	die ("Esse usuario não existe");} else {	$ssql= "UPDATE tb_usuarios_intranet SET senha= encrypt('$confsenha') WHERE id ='$usuario'"	$query = @mysql_query($ssql);}if (!$query){	die ("Problemas ao executar o SQL !!!");} else {	Echo "A execução do SQL foi bem sucedida !!!";}if (!$query){	die ("Erro ao atualizar o banco");} else {	echo "A sua senha foi alterada com sucesso";	mysql_close($conexao);}}?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

num estendi:

if (!$query){}
Onde está a query?

Compartilhar este post


Link para o post
Compartilhar em outros sites

veja o código de um outro angulo.

<?php//preencha todos esses campos com os dados do seu banco$host = ""; //provavelmente localhost$username = "";//nome do usuário mysql$password = "";//senha do usuário$bd = "";//base de dados $conexao = mysql_connect($host, $username, $password);//abrindo conexão com o banco$select = "SELECT * FROM tb_usuarios_intranet WHERE senha = encrypt('$senha',senha) and id ='$usuario'"$query = mysql_db_query($bd,$select,$conexao);if($query){	$update= "UPDATE tb_usuarios_intranet SET senha= encrypt('$confsenha') WHERE id ='$usuario'"	mysql_db_query($bd,$update,$conexao);}?>
espero estar ajudando.OK?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.