Jump to content
Fórum Script Brasil
  • 0

Código para digitar senha confirmar banco dados


AlbertoRT

Question

Um banco de dados com os campos num_senha e outro email_candidato (os dois chaves).

Esses dois registros seriam informados ao interessado.

Esse interessado digitaria em uma página ASP o num_senha e email_candidato.

Se o num_senha e email_cadidato digitados pelo mesmo forem confimados no banco de dados abre a página da prova com as questões. Caso contrario informa "senha ou e-mail não cadastrados".

Poderiam me indicar algum modelo para estudo.

Muito obrigado.

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

PAGINA DE LOGIN

<% if Request.QueryString("erro") <> "" then
          Response.Write "<span class=mensagem>Login Inválido!</span>"
          end if%>
          </p>
          <form name="form1" method="post" action="validalogin.asp">
            <table width="234" border="0" align="center" bordercolor="#666666" class="selecao">
              <tr>
                <td width="91"><span class="style8">Login:</span></td>
                <td width="143"><input name="login" type="text" id="login">                </td>
              </tr>
              <tr>
                <td><span class="style8">Senha:</span></td>
                <td><input name="senha" type="password" id="senha"></td>
              </tr>
              <tr>
                <td colspan="2"><div align="center" class="style6">
                    <input type="submit" name="button" id="button" value="    Entrar    ">
                    <input type="hidden" name="enviando" value="sim">
                </div></td>
              </tr>
            </table>
              </form>
PAGINA QUE VALIDA O LOGIN - validalogin.asp
<% 
'PRIMEIRO FAÇA SUA CONEXAO COM BANCO APOS SIGUA O COD. ABAIXO

        Set RecSet = Server.CreateObject("adodb.recordset")
        
dim login
dim senha

login = request.form("login")
senha = request.form("senha")

'evitando sql inject segurança.

login = replace(login,"'","''")
login = replace(login,"#","''")
login = replace(login,"$","''")
login = replace(login,"%","''")
login = replace(login,"¨","''")
login = replace(login,"&","''")
login = replace(login,"'or'1'='1'","''")
login = replace(login,"1=1","''")
login = replace(login,"--","''")
login = replace(login,"insert","''")
login = replace(login,"drop","''")
login = replace(login,"delet","''")
login = replace(login,"xp_","''")
login = replace(login,"select","''")
login = replace(login,"*","''")

senha = replace(senha,"'","''")
senha = replace(senha,"#","''")
senha = replace(senha,"$","''")
senha = replace(senha,"%","''")
senha = replace(senha,"¨","''")
senha = replace(senha,"&","''")
senha = replace(senha,"'or'1'='1'","''")
senha = replace(senha,"1=1","''")
senha = replace(senha,"--","''")
senha = replace(senha,"insert","''")
senha = replace(senha,"drop","''")
senha = replace(senha,"delet","''")
senha = replace(senha,"xp_","''")
senha = replace(senha,"select","''")
senha = replace(senha,"*","''")

    Recset.open "select * from usuario where login ='"&login&"' and senha ='"&senha&"'", conn
            
    if not Recset.eof then    'encontrou o registro procurado
            session("usuario")    = Recset("login")
            Session("Status")    = "Logado"
            Session("corretor") = Recset("id")
            Response.Redirect("index.asp")
        else
            Session("Status")= "Invalido"
            Response.Redirect("login.asp?erro=invalido")
    end if
%>
Cada página que é restrita colocar o seguinte código
<%    if Session("usuario")="" then%>

<!--#include file="login.asp"-->

<%Response.End

End if%>

Link to comment
Share on other sites

  • 0

Alea Bom Dia,

É exatamente isso. So que eu estou vacilando em alguma coisa.

O meu banco de dados tem os campos abaixo. Isso é importante senão vai apresentar erro. O nome que se usa é login na tabela e não Usuario_Nome. Sei que é indiferente isso mas é bom colocar o mais correto como você indicou. Embora tenha o campo Usuario_Nome não tem problema só vai validar senha que eu vou informar antes ao usuário e o login que ele vai me informar no ato do pedido. Vou cadastrar no bando de dados tabela usuario se não estiver correto a senha ou o email vai aparecer a mensagem "Sua senha oo logon não estão cadastrados. Entre em contato com Administrador e peça uma senha". Se já estive abre a página da prova.

Mas os campos da tabela usuario são esses:

Usuario_id - Tipo - Numeração Automática

Usuario_Nome - Tipo - Texto

Usuario_Email - Tipo - Texto

Usuario_senha - Tipo - Texto

A página login.asp ficou assim:

<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<% if Request.QueryString("erro") <> "" then
          Response.Write "<span class=mensagem>Login Inválido!</span>"
          end if%>
          </p>
          <form name="form1" method="post" action="validalogin.asp">
            <table width="234" border="0" align="center" bordercolor="#666666" class="selecao">
              <tr>
                <td width="91"><span class="style8">Login:</span></td>
                <td width="143"><input name="login" type="text" id="login">                </td>
              </tr>
              <tr>
                <td><span class="style8">Senha:</span></td>
                <td><input name="senha" type="password" id="senha"></td>
              </tr>
              <tr>
                <td colspan="2"><div align="center" class="style6">
                    <input type="submit" name="button" id="button" value="    Entrar    ">
                    <input type="hidden" name="enviando" value="sim">
                </div></td>
              </tr>
            </table>
              </form>


</body>
</html>
Ao abrir deu a masagem de erro: Tipo de erro: Erro de compilação do Microsoft JScript (0x800A03ED) '(' esperado /serieweb/Nasp/Laboratorios/login.asp, line 10, column 3 if Request.QueryString("erro") <> "" then --^ A linha 10 é essa:
<% if Request.QueryString("erro") <> "" then
A página validalogin.asp ficou assim: (devo está valicilando em alguma posição do código)
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>
<%
Option Explicit 
%>
<!--#Include file="../dbConexao.inc"-->
<%

'PRIMEIRO FAÇA SUA CONEXAO COM BANCO APOS SIGUA O COD. ABAIXO

        Set RecSet = Server.CreateObject("adodb.recordset")
        
dim login
dim senha

login = request.form("login")
senha = request.form("senha")

'evitando sql inject segurança.

login = replace(login,"'","''")
login = replace(login,"#","''")
login = replace(login,"$","''")
login = replace(login,"%","''")
login = replace(login,"¨","''")
login = replace(login,"&","''")
login = replace(login,"'or'1'='1'","''")
login = replace(login,"1=1","''")
login = replace(login,"--","''")
login = replace(login,"insert","''")
login = replace(login,"drop","''")
login = replace(login,"delet","''")
login = replace(login,"xp_","''")
login = replace(login,"select","''")
login = replace(login,"*","''")

senha = replace(senha,"'","''")
senha = replace(senha,"#","''")
senha = replace(senha,"$","''")
senha = replace(senha,"%","''")
senha = replace(senha,"¨","''")
senha = replace(senha,"&","''")
senha = replace(senha,"'or'1'='1'","''")
senha = replace(senha,"1=1","''")
senha = replace(senha,"--","''")
senha = replace(senha,"insert","''")
senha = replace(senha,"drop","''")
senha = replace(senha,"delet","''")
senha = replace(senha,"xp_","''")
senha = replace(senha,"select","''")
senha = replace(senha,"*","''")

Recset.open "select * from usuario where login ='"&login&"' and senha ='"&senha&"'", conn
 if not Recset.eof then    'encontrou o registro procurado
            session("usuario")    = Recset("login")
            Session("Status")    = "Logado"
            Session("corretor") = Recset("id")
            Response.Redirect("index.asp")
        else
            Session("Status")= "Invalido"
            Response.Redirect("login.asp?erro=invalido")
    end if
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

</body>
</html>

A página que criei foi <%@LANGUAGE="JAVASCRIPT" CODEPAGE="65001"%>

Isso está errado correto? O certo é <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

Desculpe os furos.

Edited by AlbertoRT
Link to comment
Share on other sites

  • 0

Tem que mudar essa linha

Recset.open "select * from usuario where login ='"&login&"' and senha ='"&senha&"'", conn

Tem que colocar o nome de sua tabela e campos isso meu é só um exemplo

Recset.open "select * from NOME_DA_TABELA where email_candidato='"&login&"' and num_senha ='"&senha&"'", conn

Edited by -#Alea#-
Link to comment
Share on other sites

  • 0

É Alea, estou totalmete enrolado.

Eu não estou sabendo fazer a conexão no seu código como uma conexão que está funcionando, conforme abaixo.

Como disso essa será a primeira página em ASP dessa forma e estou perdido.

Teitei usar a mesma lógica de conexão da página ResProva_LT_01_01.asp que, está fazendo a conexão mas não consigo fazer o mesmo a a sua.

O seu exemplo eu procurei fazer tudo igual com a que está funcionando isso porque o "Include file", o banco de dados são os mesmos somente a tabela que muda para "usuarios" com os campos:

Usuario_id - Tipo - Numeração Automática

Usuario_Nome - Tipo - Texto

email_candidato - Tipo - Texto

num_senha - Tipo - Texto

Essa conexão funciona

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
Option Explicit 
%>
<!--#Include file="../dbConexao.inc"-->
<%
Dim conexaoDataBase
Dim strIns, rsProva
Dim varNum_senha_p1TL, varResp_alternativa_a_perg_1_p1TL, varResp_alternativa_b_perg_1_p1TL, varResp_alternativa_c_perg_1_p1TL, varResp_alternativa_d_perg_1_p1TL, varResp_alternativa_e_perg_1_p1TL

varNum_senha_p1TL = Request.Form("txtNum_senha_plTL")
varResp_alternativa_a_perg_1_p1TL = Request.Form("txtResp_alternativa_a_perg_1_p1TL")
varResp_alternativa_b_perg_1_p1TL = Request.Form("txtResp_alternativa_b_perg_1_p1TL")
varResp_alternativa_c_perg_1_p1TL = Request.Form("txtResp_alternativa_c_perg_1_p1TL")
varResp_alternativa_d_perg_1_p1TL = Request.Form("txtResp_alternativa_d_perg_1_p1TL")
varResp_alternativa_e_perg_1_p1TL = Request.Form("txtResp_alternativa_e_perg_1_p1TL")

strINS = "INSERT into tb_prova_legislacao_telec_1_classe_C"
strINS = strINS & "(Num_senha_p1TL, Resp_alternativa_a_perg_1_p1TL, Resp_alternativa_b_perg_1_p1TL, Resp_alternativa_c_perg_1_p1TL, Resp_alternativa_d_perg_1_p1TL, Resp_alternativa_e_perg_1_p1TL )"

strINS = strINS + "VALUES ('" + varNum_senha_p1TL + "',"
strINS = strINS + "'" + varResp_alternativa_a_perg_1_p1TL + "',"
strINS = strINS + "'" + varResp_alternativa_b_perg_1_p1TL + "',"
strINS = strINS + "'" + varResp_alternativa_c_perg_1_p1TL + "',"
strINS = strINS + "'" + varResp_alternativa_d_perg_1_p1TL + "',"
strINS = strINS + "'" + varResp_alternativa_e_perg_1_p1TL + "')"

Call abreConexao
'Response.Write(strINS)
Set rsProva = conexaoDataBase.Execute(strINS)
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Inserindo dados em uma tabela</title>
</head>

<body>
Sua prova com a senha: "<strong><% = varNum_senha_p1TL %></strong>" foi gravada. Veja os pontos na página resultado  
</body>
</html>
<%
Call fechaConexao
Set rsProva = Nothing
%>
Tudo bem que tenho que ter o mesmo nome dos campos mas até isso eu mudei conforme o seu exemplo para evitar problema mas estou errando ainda. Eu estou colocando o código no HTML corretamente? A login.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<% if Request.QueryString("erro") <> "" then
          Response.Write "<span class=mensagem>Login Inválido!</span>"
          end if%>
          </p>
          <form name="form1" method="post" action="validalogin.asp">
            <table width="234" border="0" align="center" bordercolor="#666666" class="selecao">
              <tr>
                <td width="91"><span class="style8">Login:</span></td>
                <td width="143"><input name="login" type="text" id="login">                </td>
              </tr>
              <tr>
                <td><span class="style8">Senha:</span></td>
                <td><input name="senha" type="password" id="senha"></td>
              </tr>
              <tr>
                <td colspan="2"><div align="center" class="style6">
                    <input type="submit" name="button" id="button" value="    Entrar    ">
                    <input type="hidden" name="enviando" value="sim">
                </div></td>
              </tr>
            </table>
              </form>



</body>
</html>
A validalogin.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%
Option Explicit 
%>

<!--#Include file="../dbConexao.inc"-->

<%

'PRIMEIRO FAÇA SUA CONEXAO COM BANCO APOS SIGUA O COD. ABAIXO

Set RecSet = Server.CreateObject("adodb.recordset")

   
dim login
dim senha

login = request.form("login")
senha = request.form("senha")

'evitando sql inject segurança.

login = replace(login,"'","''")
login = replace(login,"#","''")
login = replace(login,"$","''")
login = replace(login,"%","''")
login = replace(login,"¨","''")
login = replace(login,"&","''")
login = replace(login,"'or'1'='1'","''")
login = replace(login,"1=1","''")
login = replace(login,"--","''")
login = replace(login,"insert","''")
login = replace(login,"drop","''")
login = replace(login,"delet","''")
login = replace(login,"xp_","''")
login = replace(login,"select","''")
login = replace(login,"*","''")

senha = replace(senha,"'","''")
senha = replace(senha,"#","''")
senha = replace(senha,"$","''")
senha = replace(senha,"%","''")
senha = replace(senha,"¨","''")
senha = replace(senha,"&","''")
senha = replace(senha,"'or'1'='1'","''")
senha = replace(senha,"1=1","''")
senha = replace(senha,"--","''")
senha = replace(senha,"insert","''")
senha = replace(senha,"drop","''")
senha = replace(senha,"delet","''")
senha = replace(senha,"xp_","''")
senha = replace(senha,"select","''")
senha = replace(senha,"*","''")


Recset.open "select * from usuarios where email_candidato='"&login&"' and num_senha ='"&senha&"'", conn



 if not Recset.eof then    'encontrou o registro procurado
            session("usuario")    = Recset("login")
            Session("Status")    = "Logado"
            Session("corretor") = Recset("id")
            Response.Redirect("index.asp")
        else
            Session("Status")= "Invalido"
            Response.Redirect("login.asp?erro=invalido")
    end if
%>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
</body>
</html>

Link to comment
Share on other sites

  • 0

Coloquei a linha conforme sugerido abriu a página de erro com a mensagem:

Tipo de erro:
Erro de compilação do Microsoft VBScript (0x800A03EA)
Erro de sintaxe
/serieweb/Nasp/Laboratorios/validalogin.asp, line 59, column 98
Recset.open "select * from usuarios where email_candidato='"&login&"' and num_senha ='"&senha&"'",Call

Obrigado Alea

Edited by AlbertoRT
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...