Guest - Marcos - Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 Olá! Sou iniciante em ASP.Eu criei um sistema de login, queria saber como faz para, após o usuario estar logador, poder trocar a sua senha.Desde já agradecido. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 Monte o formulario, faça a consulta ao BD e nos value dos input text, atribua o valor do BD dos respectivos campos. Depois que submeter o formulário, faça rotina de UPDATE, que pode ser em um arquivo separado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - marcos - Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 Monte o formulario, faça a consulta ao BD e nos value dos input text, atribua o valor do BD dos respectivos campos. Depois que submeter o formulário, faça rotina de UPDATE, que pode ser em um arquivo separado desculpe a minha ignorância, mas como faz a rotina updateObrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 Um exemplo simples, para você adaptar:<% ' A session do ID do usuario deve ser criada no arquivo de autenticação id_usuario = session("id_usuario") if request.form("alterar") = "" then %> <form method="post" action="pagina.asp"> Login: <input type="text" name="login" value="<%= login %>"><br> Nova senha: <input type="password" name="senha"><br> <input type="submit" name="alterar" value="Alterar"> <% else login = request.form("login") senha = request.form("senha") sql_edita = "UPDATE TABELA set login = '" & login & "', senha = '"& senha &"' where id_usuario = "& id_usuario set tab_edita = conexao.execute(sql_edita) end if %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 Um exemplo simples, para você adaptar:<% ' A session do ID do usuario deve ser criada no arquivo de autenticação id_usuario = session("id_usuario") if request.form("alterar") = "" then %> <form method="post" action="pagina.asp"> Login: <input type="text" name="login" value="<%= login %>"><br> Nova senha: <input type="password" name="senha"><br> <input type="submit" name="alterar" value="Alterar"> <% else login = request.form("login") senha = request.form("senha") sql_edita = "UPDATE TABELA set login = '" & login & "', senha = '"& senha &"' where id_usuario = "& id_usuario set tab_edita = conexao.execute(sql_edita) end if %> obrigado pela ajuda.Estou com um problema, como eu crio o session ID?Desculpe estar incomonando é que realmente sou muito iniciante.Muito obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 20, 2006 Denunciar Share Postado Março 20, 2006 No arquivo que faz o login, após a autenticação do usuario, você cria a session("id"). Porém essa ID deve vir de seu BD, pegue um campo da tabela onde tem os usuários que seja a chave primária.um exemplo:id_usuario = session("id_usuario") Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 No arquivo que faz o login, após a autenticação do usuario, você cria a session("id"). Porém essa ID deve vir de seu BD, pegue um campo da tabela onde tem os usuários que seja a chave primária.um exemplo:id_usuario = session("id_usuario") valeu pela ajuda mas ta dificil de eu consegui acertar aqui... Será que você não tem um script pronto, ou não sabe onde tem para baixar?Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 A parte de edição você conseguiu?Para criar a session da ID, poste o código do arquivo onde faz a autenticação, que te mostro onde criar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 A parte de edição você conseguiu?Para criar a session da ID, poste o código do arquivo onde faz a autenticação, que te mostro onde criar É que eu to meio perdido, a autenticação do login é essa: <% Dim login,senha,conexao,constr,rs login = request.Form("login") senha = request.Form("senha") set conexao = createobject("AdoDb.connection") constr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("C:/coliseu server/t4c.mdb") conexao.open constr set rs = conexao.execute("SELECT * FROM T4Cusers WHERE Account='"&login&"' AND Password='"&senha&"'") login = session("account") if rs.eof then response.Redirect("errou.asp") else response.Cookies("account")=login response.Cookies("senha")=senha response.cookies("logado").expires="31/12/2010" response.Redirect ""& ("cookie.asp") end if %>Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Está gravando por cookies, então para aproveitar, pode ser feito assim na edição (sem alterar o arquivo de autenticação): Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Olá!Eu fiz assim, o usuario loga-se no site, aí vai para a pagina cookie.asp, que é esta: <% if request.Cookies("logado")="" then %> <!--#include file="index.asp"--> <% else %> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <% If Request("HTTP_REFERER") = "" Then response.Redirect("errou.asp") Response.End End If account = request.Cookies("account") response.Write("Bem-Vindo "&account) end if %> <br><br> <br><br> <br><br> </body> </html> <% if request.form("alterar") = "" then %> <form method="post" action="cookie.asp"> Login: <input type="text" name="login" value="<%= login %>" size="20"><br> Nova senha: <input type="password" name="senha" size="20"><br> <input type="submit" name="alterar" value="Alterar"> <% else login = request.form("login") senha = request.form("senha") sql_edita = "UPDATE T4Cusers set login = '" & login & "', senha = '"& senha &"' where login = '"& request.cookies("account") &"' and senha = '"& request.cookies("senha") &"'" set tab_edita = conexao.execute(sql_edita) end if %> <br><br> <a href="logout.asp">Logout </a> Como pode ver, eu coloquei o form para trocar a senha nesa página, só que quando eu clico em alterar, aparece o seguinte erro:Script error detected at line 73. Source line: set tab_edita = conexao.execute(sql_edita) Description: Objeto necessário: 'conexao'Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 você tem que fazer a conexão com o banco de dados antes do select... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 você tem que fazer a conexão com o banco de dados antes do select... Fazer a conexão nessa página cookie?Eu diz isso <% if request.Cookies("logado")="" then %> <!--#include file="index.asp"--> <% else %> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <% If Request("HTTP_REFERER") = "" Then response.Redirect("errou.asp") Response.End End If account = request.Cookies("account") account = request.Cookies("senha") end if %> [COLOR=red]<%set conexao = createobject("AdoDb.connection") constr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("C:/coliseu server/t4c.mdb") conexao.open constr%>[/COLOR] <br><br> <br><br> <br><br> </body> </html> <%response.Write("Bem-Vindo "&account)%> <% if request.form("alterar") = "" then %> <form method="post" action="cookie.asp"> Login: <input type="text" name="login" value="<%= login %>" size="20"><br> Nova senha: <input type="password" name="senha" size="20"><br> <input type="submit" name="alterar" value="Alterar"> <%response.Write("Sua senha é "&senha)%> <% else login = request.form("login") senha = request.form("senha") sql_edita = "UPDATE T4Cusers set login = '" & login & "', senha = '"& senha &"' where login = '"& request.cookies("account") &"' and senha = '"& request.cookies("senha") &"'" set tab_edita = conexao.execute(sql_edita) end if %> <br><br> <a href="logout.asp">Logout </a> E deu esse erro:Script error detected at line 75. Source line: set tab_edita = conexao.execute(sql_edita) Description: [Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 2.Muito obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Primeiro, altere as linhas:onde era:account = request.Cookies("senha") para: senha = request.Cookies("senha") onde era: Login: <input type="text" name="login" value="<%= login %>" size="20"><br> para: Login: <input type="text" name="login" value="<%= account %>" size="20"><br> Segundo, quando você abre essa página, o campo de login vem com o nome já na caixa de texto ou vem vazia? Terceiro, você está usando Server MapPath e colocando o caminho fisico, SE você tem os arquivos na pasta C:/coliseu server/ então não precisa especificar o caminho é só deixar: server.MapPath("t4c.mdb") Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Obrigado, fiz as alterações, mas o erro continua o mesmo.Quando eu abro a pagina o campo login vem vazio.Eu uso o c:/coliseu server por que o bando de dados fica nessa pasta e o formulario em outra.Obrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Desculpe falei errado no post acima, no campo de login da pagina de troca senha, aparece sim o account e não fica vazio Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Acredito que não seja, mas confira o tipo de dados no seu BD, account e senha tem que ser texto..Mas não sei mais o que pode ser pois aqui testei e funcionou.ps.: se registre no fórum Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Acredito que não seja, mas confira o tipo de dados no seu BD, account e senha tem que ser texto..Mas não sei mais o que pode ser pois aqui testei e funcionou.ps.: se registre no fórum Olá!Como eu vejo se está em formato de texto? Acredito que esteja, não sei se tem haver, mas o sistema de cadastrar dados através de um formulario funcionaobs: outra hora me registro, tenho que criar um e-mail ainda hehe Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Eu coloquei na net um arquivo .zip com o sistema de troca senha e o db, gostaria que fosse testa-se para ver se funciona ai.Muito obrigado-> http://rapidshare.de/files/16078941/trocasenha.zip.html Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Esse erro:Description: [Microsoft][Driver ODBC para Microsoft Access] Parâmetros insuficientes. Eram esperados 2.é porque no Banco de dados você tem na tabela T4Cusers os campos Account e Password, mas no código você chama as tabelas login e senha... ou seja, não existem esses campos na tabela, por isso dá esse erro.Altere onde está em negrito:Login: <input type="text" name="nlogin" value="<%= account %>" " size="20" size="20"><br>Nova senha: <input type="password" name="nsenha" size="20"><br><input type="submit" name="alterar" value="Alterar"><% elselogin = request.form("login")sql_edita = "UPDATE T4Cusers set account = '" & request.form("nlogin") & "', password = '"& request.form("nsenha") &"' where account = '"& request.cookies("account") &"' and password = '"& request.cookies("senha") &"'" Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 Olá! Obrigado por ajudar!Olha eu fiz isso que você falou, e agora quando eu clico em alterar o formulário some e fica tudo em branco... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 O account e password que vao no formulario de edição vem dos cookies gravados, confira se nesse arquivo de edição tem:account = request.Cookies("account") senha = request.Cookies("senha") Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 O account e password que vao no formulario de edição vem dos cookies gravados, confira se nesse arquivo de edição tem:account = request.Cookies("account") senha = request.Cookies("senha") Tem sim.Coloquei na web os arquivos, peço o favor que de uma olhada para ver o que está errado.Muito obrigado por estar me ajudando!Os arquivos estão aqui: http://rapidshare.de/files/16100246/sistem...ginASP.rar.htmlObrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 deixe em zip porque eu não tem winrar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - Marcos - Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 deixe em zip porque eu não tem winrar ta aqui:http://rapidshare.de/files/16100515/sistem...ginASP.zip.htmlObrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Março 21, 2006 Denunciar Share Postado Março 21, 2006 duas coisas:arquivo logar.asp, adicione a linha em negrito:response.Cookies("account")=loginresponse.Cookies("senha")=senharesponse.Cookies("logado")="sim"Ps.: eu coloquei "sim" mas você pode colocar 1, "ok",.. ou qualquer palavra/letra para indicar.arquivo cookie.asp, adicione a linha em negrito:sql_edita = "UPDATE T4Cusers set account = '" & request.form("nlogin") & "', password = '"& request.form("nsenha") &"' where account = '"& request.cookies("account") &"' and password = '"& request.cookies("senha") &"'"set tab = conexao.execute(sql_edita) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest - Marcos -
Olá! Sou iniciante em ASP.
Eu criei um sistema de login, queria saber como faz para, após o usuario estar logador, poder trocar a sua senha.
Desde já agradecido.
Link para o comentário
Compartilhar em outros sites
29 respostass a esta questão
Posts Recomendados
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.