Ir para conteúdo
Fórum Script Brasil
  • 0

Alterar Senha


*Michelle*

Pergunta

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.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Em primeiro lugar você vai ter que bolar um jeito de descobrir se é o primeiro acesso do usuário ao sistema, pode ser um campo na tabela mesmo, do tipo ENUM, lá você marcar se é ou não o primeiro acesso, se for, você dar um include na página que o usuário deve ver com um formulário para ele alterar a senha, quando o usuário alterar a senha você modifica o status do campo para deixar o usuário marcado como já tendo alterado a senha... isso tudo se faz com SELECT e UPDATE (select para pegar os dados e update para mudar o status do campo na tabela).

Link para o comentário
Compartilhar em outros sites

  • 0

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
<?php
if ($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);
}
}
?>

Link para o comentário
Compartilhar em outros sites

  • 0

Michele,

você já verificou se todos os parametros estão sendo passados?

Não sei se entendi bem pois estou começando agora mas nessa query:

$ssql= "UPDATE tb_usuarios_intranet SET senha= encrypt('$confsenha') WHERE id ='$usuario'"

você está usando variavel $usuario e no começo você declarou $username.

Será que não é isso? Se for, no seu select você também está usando $usuario...aí se foi esse o problema, tem que mudar pra $username

Editado por Mário Miranda
Link para o comentário
Compartilhar em outros sites

  • 0

Olha o que você escreveu :blink: :

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...

Acredito que o username seja para a conexão ao banco de dados... uma coisa que eu não vi, foi o $_POST para pegar os dados findos do form...

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...