Ir para conteúdo

POWERED BY:

Arquivado

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

caio.hps

encode decode mysql

Recommended Posts

galera esta acontecendo um erro aqui

preciso muito da ajuda de voces

 

tenho uma tabela de cadastro onde tem login e senha

na validaçao da senha

quando eu chamo o campo da senha me volta esse erro

 

Item cannot be found in the collection corresponding to the requested name or ordinal.

que teoricamente seria erro de campo errado na tabela

 

o que eu fiz ...uso mysql

na inclusao do cadastro, na parte do login uso encode pra criptografar a senha

 

entao ele fica com caracteres estranhos, isso num campo tipo varchar()

 

quando eu chamo esse campo pelo select, ele da esse erro ai. O engraçado que pelo MySQL Query Browser ele funciona perfeitamente

 

alguem poderia me dar uma luz

 

vou mostrar o codigo

 

<!--#include file="includes.asp"-->
<%
vuser = Request.Form("usuario")
vpass = Request.Form("senha")

rest = session("restrito")

	strSQL = "select idAnalista, logAnalista, decode(passAnalista,'123') as pass from tbanalistas where logAnalista='"&vuser&"'"

	call Conecta
	call AbreRs(strSQL)
	teste = rs("passAnalista")
	response.Write (teste)
	response.End()
e por exemplo, se eu coloco assim..

strSQL = "select idAnalista, logAnalista, decode(passAnalista,'123') as pass from tbanalistas where logAnalista='"&vuser&"'"

	call Conecta
	call AbreRs(strSQL)
	teste = rs("decode(passAnalista,'123')")	   // esta eh a linha da mudança
	response.Write (teste)
	response.End()

e assim ele me volta tres interrogaçoes

 

assim >>> "???"

 

alguem tem alguma ideia

qualquer ajuda eh bem vinda

pq eu to parado agora com isso

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poste a função do encode/decode.

 

Reconsidere decodificar a senha, não é muito seguro você fazer isso... Pra falar a verdade, é mais seguro você usar ela encriptada mesmo... Assim, a segurança de, mesmo lendo o DB você não terá acesso as senhas.

 

Tipo assim, você usa encode(var) pra gravar ela no banco

e na hora de comparar você usa assim

 

encode(var) = campo_da_senha_no_banco

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poste a função do encode/decode.

 

Reconsidere decodificar a senha, não é muito seguro você fazer isso... Pra falar a verdade, é mais seguro você usar ela encriptada mesmo... Assim, a segurança de, mesmo lendo o DB você não terá acesso as senhas.

 

Tipo assim, você usa encode(var) pra gravar ela no banco

e na hora de comparar você usa assim

 

encode(var) = campo_da_senha_no_banco

 

Abraço

no caso ficaria assim

select idAnalista, logAnalista, passAnalista from tbAnalistas where logAnalista='"&vuser&"' and passAnalista = encode('"&vpass&"','123')"

e funciona, porem na hora que o cara esquecer a senha e clicar em esqueci minha senha eu tenho que descriptografa-la

 

e ai que tah o problema, entendeu?

 

mas do jeito que você falou...deu certo

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora preciso decodificar para quando o usuario clicarem esqueci minha senha

 

 

ele discriptografa e envia pra ele

 

mas tem esse problema

 

a string sql se eu colocar direto no query do banco ...funciona normal

 

agora no codigo asp

quando eu abro o record set

ele me traz esses valores "???"

ou quando eu coloco o campo sem o decode ele me traz erro ordinal....que ele nao acha o campo na tabela

 

 

alguem ja tentou usar esse comando com asp?

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha so

esse esquema nao é seguro nao

 

pq você nao cria uma nova senha e envia pra ele quando ele clicar em 'esqueci a senha'?

é a melhor forma

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha so

esse esquema nao é seguro nao

 

pq você nao cria uma nova senha e envia pra ele quando ele clicar em 'esqueci a senha'?

é a melhor forma

 

interessante, mas como crio uma senha aleatoria

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu postei um sistema que cria uma sequencia de numeros e letras aleatorias

você define a qtd e uma base, que serve como garantia de que será a unica chave

esta no laboratorio

 

quando o usuario clicar em esqueci a senha, o sistema gera esse nova senha e grava no banco e envia pro email de cadastro

apenas isso

 

ele tera uma nova senha pra acessar o painel e altera-la

 

[]s

 

-------------

nao esta no laboratorio nao...

http://forum.imasters.com.br/index.php...t&p=1065316

é essa aqui

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.