Ir para conteúdo

POWERED BY:

Arquivado

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

Edward Lewis

Cadastro de usuário

Recommended Posts

Preciso fazer um formulário de cadastro de usuários e jogar essas informações em um banco de dados. Até ai, tudo bem.Preciso também fazer com que depois que o usuário preencher o cadastro, seja enviado para o email dele uma mensagem com um link que servirá para a habilitação ou a validação do seu cadastro.Alguém teria um codigo desse tipo ou poderia me dar alguma sugestão.Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

se descobrir, me diz............tentei varias coisas e nada funcionou.

Deve ser facil, pois muitos sites tem este recurso....

Imaginei criar um codigo para ativar o usuario, passar atraves de e mail pelo metodo get....

 

tipo

<%  dim login, senha, email,link	login = request ("login")	senha = request ("senha")	email = request ("email")      dim strCode,activateCode,ativ	strCode=login & senha & email	activateCode=cstr(Len(strCode)*793)  Response.write (activateCode)link="http://anderson/freemember.asp?ativ=" & activateCode  Response.write (link)	%>

 

o response write ai foi colocado somente para ver o que acontecia............

 

mas quando passo atraves do mail....a resposta fatal

 

<%  dim active,conn, rs	active = request ("ativ")      set conn = server.createobject ("ADODB.Connection")   set rs = server.createobject ("ADODB.RecordSet")   conn.open "Driver={Microsoft Access Driver (*.mdb)};" &_      "DBQ=" & Server.Mappath ("..\dados\bestnet.mdb")   rs.open "select activateCode from members where activateCode='" & active & "'" , connIf  rs("activateCode")="" thenResponse.Redirect("registration.asp")ElseResponse.Redirect("login.asp")End if  rs.close   conn.close   set rs = nothing   set conn = nothing%>

Os cabeçalhos HTTP já estão gravados no navegador cliente. Quaisquer modificações no cabeçalho HTTP devem ser feitas antes de gravar o conteúdo da página.

 

 

 

 

Alem do que este metodo naum me parece muito adequado de se passar o conteudo de uma variavel.

 

 

Por favor, se você descobrir algo, me avisa.........

(a.oliveira@superig.com.br)

Compartilhar este post


Link para o post
Compartilhar em outros sites
se descobrir, me diz............tentei varias coisas e nada funcionou.

Deve ser facil, pois muitos sites tem este recurso....

Imaginei criar um codigo para ativar o usuario, passar atraves de e mail pelo metodo get....

 

tipo

<%  dim login, senha, email,link
login = request ("login")
senha = request ("senha")
email = request ("email")
     dim strCode,activateCode,ativ
strCode=login & senha & email
activateCode=cstr(Len(strCode)*793)
 Response.write (activateCode)
link="http://anderson/freemember.asp?ativ=" & activateCode
 Response.write (link)
%>

 

 

o response write ai foi colocado somente para ver o que acontecia............

 

mas quando passo atraves do mail....a resposta fatal

 

<%  dim active,conn, rs
active = request ("ativ")
     set conn = server.createobject ("ADODB.Connection")
  set rs = server.createobject ("ADODB.RecordSet")
  conn.open "Driver={Microsoft Access Driver (*.mdb)};" &_
     "DBQ=" & Server.Mappath ("..\dados\bestnet.mdb")
  rs.open "select activateCode from members where activateCode='" & active & "'" , conn
If  rs("activateCode")="" then
Response.Redirect("registration.asp")
Else
Response.Redirect("login.asp")
End if
 rs.close
  conn.close
  set rs = nothing
  set conn = nothing

%>

 

Os cabeçalhos HTTP já estão gravados no navegador cliente. Quaisquer modificações no cabeçalho HTTP devem ser feitas antes de gravar o conteúdo da página.

 

 

 

 

Alem do que este metodo naum me parece muito adequado de se passar o conteudo de uma variavel.

 

 

Por favor, se você descobrir algo, me avisa.........

(a.oliveira@superig.com.br)

Denise, no seu caso você pode mover todo o seu código de captura para o top o da página, ou usar:

Response.buffer=true e no final do código response.clear, testa e veja o que acontece.

E sim o método get é um pouco inseguro, você pode, ao invéz de utilizar a senha do usuário criar um numero para inserir no activate code.

 

Valeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim estou usando o PWS para testar.

Quanto a criar uma senha aleatória, bem, eu criei este número quando utilizei:

 

activateCode=cstr(Len(strCode)*793),

 

o que me parece bem simples, já que o que eu desejo é apenas setar no banco de dados o usuário de cantidato para cadastrado.

 

Utilizei o Response.buffer=true , conforme o Salgado e o(a) Bicicleta sugeriram e deu certo......

 

Exceto por um porém, quando tentei inserir um número inexistente no banco, deu uma exceção em tempo de execução do VB.

 

Me disseram para iniciar minha condição com:

 

If rs.eof then

 

Explicando que quando uma condição sql não é satisfeita que o ponteiro é setado para o final do banco.........

 

Só que desta forma, o que acontece é que, qualquer número está satisfazendo esta condição.

 

 

Pensei em ler o banco todo, e depois comparar, mas imaginei que isto podia tornar a execução mais lenta........até mesmo a maneira de gerar o código, em vez de criar uma senha randômica, foi feita com o intuito de agilizar este processo ao máximo.

 

Talvez vcs conheçam maneiras mais práticas e rápidas de fazer isto, sou iniciante em programação.

 

Quem tiver uma sugestão, eu agradeço muito.

 

Denise

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teste esse código abaixo:

<%response.buffer=true
dim active,conn, rs
active = request ("ativ")
    set conn = server.createobject ("ADODB.Connection")
 set rs = server.createobject ("ADODB.RecordSet")
 conn.open "Driver={Microsoft Access Driver (*.mdb)};" &_
    "DBQ=" & Server.Mappath ("..\dados\bestnet.mdb")
 rs.open "select activateCode from members where activateCode='" & active & "'" , conn
If rs.EOF or rs.BOF then
 response.clear
 rs.close
 conn.close
 set rs = nothing
 set conn = nothing
 Response.Redirect("registration.asp")
Else
 response.clear
 rs.close
 conn.close
 set rs = nothing
 set conn = nothing
 Response.Redirect("login.asp")
End if
%>

QQ coisa, já sabe, é só gritar ;)

 

 

Valeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ahuahauhauhauahmais um ressuscitador de topicos, heheheh...que blemas você está tendo??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sabe como é né Mario, perto de vcs sou um excluido digital.o negócio ficou meio confuso, sei que um passa o parametro para um e-mail contendo um url.e o outro autentica verificando o parâmentropassar o link para um e-mail eu consegui fazer, mas autentica, não consegui...maria, se num for pedir muito e você tiver essas 2 páginas, você poderia me passar por e-mail?rodrigocgomes@uol.com.brAgradeço muito a ajuda sua!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Maria

que papo é esse cara???

Compartilhar este post


Link para o post
Compartilhar em outros sites

não tenho algo assim pronto...mas você pode passar no link parametros que contenham o usuario e uma chave de confirmação ai quando o cara clicar você verifica se a chave corresponde aquele user e autentica...

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.