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

[resolvido] Como Faço Pro Usuário Alterar Sua Própria Senha?


Notax

Pergunta

Oi pessoal, estou aqui pra mais esta dúvida...

tenho esse script de verificação de senha e nome de usuario, que vem de um form de dois textfields denominados: usuario e senha.

A partir daí queria fazer uma consulta onde apresentasse como resultado somente o usuario digitado no primeiro form... mas já tentei de tudo e não rolou... olha só:

esse é o script da verificação do usuario e senha digitado no form anterior:

<!--#include file="conexao_central.asp"-->
<%
Dim usuario, senha
usuario = Trim(LCase(Request.Form("usuario")))
senha = Trim(LCase(Request.Form("senha")))
if len(usuario) = 0 then
response.redirect "logar.asp?erro=1"
end if
if len(senha) = 0 then
response.redirect "logar.asp?erro=2"
end if
Call AbrirDB
sql = "SELECT * FROM login WHERE nome='" & usuario & "'"
Set RS = Server.CreateObject("ADODB.RecordSet")
RS.Open sql,ConnDB,3,3
if not RS.EOF then
if RS("senha") <> senha then
response.redirect "logar.asp?erro=4"
else
Session("login") = True
response.redirect "central_escolhe_pra_alterar.asp"
end if
else
response.redirect "logar.asp?erro=3"
end if
RS.close
Set RS = Nothing
Call FecharDB
%>
e aqui a parte da consulta onde acredito estar o erro está assim:
'usuario = Trim(LCase(Request.Form("usuario")))
'usuario = request.form ("usuario")
' tentei desses jeitos acima, mas tb não funcionaram...
usuario = Session("login")
strQuery = "SELECT * FROM login WHERE nome ='" & usuario & "'"
Set ObjRs = objConn.Execute(strQuery)

algúem sabe me dizer onde errei?

desculpem qualquer. coisa...

forte abraço e muito obrigado pela atenção!

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

não use Lcase porque você vai fazer comparação no banco e vai dar diferença. Voce tem que chamar o nome que você deu ao campo no form anterior exemplo:

tela de login:

<input type="text" name="login">

<input type="text" name="senha">

arquivo de consulta:

login= request.form("login")

senha= request.form("senha")

entendeu?

Link para o comentário
Compartilhar em outros sites

  • 0

Oi minha amiga... valeu a força, entendi sim, mas já havia tentado dessa forma, e por alguma outra razão não está funcionando! :-(

o que acontece é o seguinte:

primeiro passo: o usuario digita seu login e senha em campos conforme o ex. abaixo:

<input type="text" name="usuario">

<input type="text" name="senha">

segundo passo: estas infs são verificadas por um script onde faço os referidos "request.form" para saber se o user e senha são corretos;

terceiro passo: se o login e senha são corretos vai para outro script, o da consulta, onde não estou conseguindo resgatar estes dados (login e senha)... podes ver ali no script que coloquei que já tinha tentado assim:

usuario = request.form ("usuario") mas não rolou!

Sei lá... será que tu terias uma outra idéia? Será que eu posso estar errando em alguma outra coisa?

porque tipo, lá nos input não tem nada errado, porque se tivesse não seria possivel fazer a verificação do usuario e senha em primeiro plano... será que não é porque ta passando por esse script intermediario de verificação antes?

valeu mais uma vez pela atenção. Brigadaço!

Abração

Link para o comentário
Compartilhar em outros sites

  • 0

Fala Kuroi... beleza? Não... ele redireciona para a consulta, mas não mostra nenhum resultado... e precisaria mostrar apenas como resultado a linha da tab onde aparece o nome do usuario e senha digitados anteriormente...

Nenhuma mensagem de erro... nada nada!

Link para o comentário
Compartilhar em outros sites

  • 0

isso mesmo! central_escolhe_pra_alterar.asp, conforme o script abaixo:

<%
Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, usuario
Set objConn =  Server.CreateObject("ADODB.Connection")
objConn.Open "DBQ=" & Server.MapPath("usuarios.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"
'usuario = Trim(LCase(Request.Form("usuario")))
usuario = Session("login")
'usuario = request.form("usuario")
strQuery = "SELECT * FROM login WHERE nome ='" & usuario & "' "
Set ObjRs = objConn.Execute(strQuery)
%>
<html>
<LINK REL=stylesheet HREF="liks_etc.css" TYPE="text/css">
<head>
<title>Tela de Consulta - ASPBRASIL</title>
</head>
<body bgcolor="#FFFFFF">
<div align="center" style="width: 756; height: 119">
  <table width="100%" border="0" cellspacing="0" cellpadding="0" height="1" align="center">
    <tr>
      <td width="448" valign="top" height="136"> 
        <table border="0" cellpadding="0" cellspacing="0" width="100%" align="center">
          <tr bgcolor="ffffff"> 
            <td colspan="3">
              
            </td>
          </tr>
          <tr> 
            <td colspan="3"> 
              <table width="736" border="0" cellspacing="0" cellpadding="0" height="18">
                <tr> 
                  <td align="center" height="1" width="734"> <font face="Verdana, Arial, Helvetica, sans-serif" color="#000099" size="3"><b><br>
                    Confirme seu usu&aacute;rio!</b></font></td>
                </tr>
              </table>
              <form method="GET" action="central_form_altera.asp">
                <table width="736" border="0" cellspacing="0" cellpadding="0" height="1">
                  <tr> 
                    <td height="1" align="center" width="734"> 
                      <table border="0" width="100%" height="63" cellpadding="2" align="center">
                        <tr bgcolor="#0099FF"> 
                          <td width="41" height="2" align="center"> <font size="1" color="FFFFFF"><b><font face="Verdana">N&ordm;:</font></b> 
                            </font></td>
                          <td width="289" height="2" align="center"> <font size="1" color="FFFFFF"><b><font face="Verdana">Login:</font></b> 
                            </font></td>
                          <td colspan="2" height="2" align="center"> <font size="1" color="FFFFFF"><b></b> 
                            </font> <font size="1" color="FFFFFF"><b><font face="Verdana">Nome:</font></b> 
                            </font></td>
                          <td width="66" height="2" align="center"> <font size="1" color="FFFFFF"> 
                            <input type="submit" name="Submit" value="Alterar">
                            </font></td>
                        </tr>
                        <%While Not objRS.EOF %>
                        <tr bgcolor="#FF9900"> 
                          <td width="41" height="2" align="center"> <div align="left"><font size="1"><b><font face="Verdana, Arial, Helvetica, sans-serif" color="#000000"> 
                              <%Response.write objRS("autonum")%>
                              </font> </b></font></div></td>
                          <td width="289" height="2" align="center"> <div align="left"><font size="1"><b><font face="Verdana, Arial, Helvetica, sans-serif" color="#000000"> 
                              <%Response.write objRS("nome")%>
                              </font> </b></font></div></td>
                          <td colspan="2" height="2" align="center"> <div align="left"><font size="1"><b><font face="Verdana, Arial, Helvetica, sans-serif" color="#000000"> 
                              </font> </b></font> <font size="1"><b><font face="Verdana, Arial, Helvetica, sans-serif">
                              <%Response.write objRS("nomecompleto")%>
                              </font></b></font></div></td>
                          <td width="66" height="2" align="center"> <div align="center"><font size="1"><b><font face="Verdana, Arial, Helvetica, sans-serif" color="#000000"> 
                              <input type="radio" name="radio" value="<%=objRS(0)%>">
                              </font> </b></font></div></td>
                        </tr>
                        <%
  'Move para o próximo registro
  objRS.MoveNext
  Wend
  'Fechando as conexões
  objRs.close
  objConn.close
  Set objRs = Nothing
  Set objConn = Nothing
  %>
                      </table>
                    </td>
                  </tr>
                </table>
              </form>
            </td>
          </tr>
        </table>
      </td>
    </tr>
  </table>
</div>
</body>
</html>

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

  • 0

ta, mas aqui onde você pega o nome do usuario (usuario = Session("login")), na pagina anterior, você passa True pra Session("login"). você não deveria passar o nome do usuario??

ou então você pode passar o nome dele em outra varaivel de sessao (Session("usuario") por exemplo) e ai pegar o nome dele na outra pagina pra fazer o select.

porque se o valor de Session("login") é True, essa sua query:

strQuery = "SELECT * FROM login WHERE nome ='" & usuario & "' "
esta ficando assim:
SELECT * FROM login WHERE nome ='True'

ou seja, ele não vai voltar nd a não ser q exista alguma usuario com nome True. e ele voltaria sempre esse e não o q foi digitado.

Link para o comentário
Compartilhar em outros sites

  • 0

Fala Kuroi... Anota mais essa aí na minha conta! Anota aí tb Andreia... valeu a força pessoal...

Entendi o meu erro e fiz assim:

lá aonde verificava o login e senha eu criei a seguinte session:

Session ("nomeusuario") = request.form("usuario")

e daí o select da consulta ficou assim:

usuario = Session("nomeusuario")

strQuery = "SELECT * FROM login WHERE nome ='" & usuario & "'"

valeu mais uma vez...

abração

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,2k
    • Posts
      651,9k
×
×
  • Criar Novo...