Ir para conteúdo

POWERED BY:

Arquivado

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

sublyer

Login

Recommended Posts

olhem o código. não axei o erro ainda..

 

ASP

[*]

 

[*]login=Request.form("login")

 

[*]senha=Request.form("senha")

 

[*]

 

[*]SLQ "select * from usuarios where usuario='"&login&"' and senha='"&senha&"'" 

 

[*]Set ins=conexao.execute(SLQ)

 

[*]if ins.eof then

 

[*]response.redirect("/")

 

[*]else

 

[*]response.redirect("home.asp?id_user="&ins("id_user")&"")

 

[*]end if

 

[*]

 

O erro que ele gera é

 

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

 

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

 

login.asp, line 17

Compartilhar este post


Link para o post
Compartilhar em outros sites

os dois campos são texto??

Compartilhar este post


Link para o post
Compartilhar em outros sites

E ai cara, tudo bem?!

 

Assim.... eu notei algumas coisas estranhas no seu código.

 

 

Primeiro o erro é na linha 17 e você não mandou a linha 17 :D ...... ou então cortou um pedaço do código e isso acaba dificultando um pouco interpretar a mensagem de erro.

 

Outra coisa é que no código que você mandou não tem a conexão com o banco. Então você não poderia estar usando o objeto 'conexão' para executar Querys...

 

Outra coisa é..... a parte da mensagem de erro que diz:

'[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. '

GERALMENTE se refere a um erro no SQL, que está tentando fazer uma consulta com tipos de dados incompatíveis. Por exemplo o campo 'usuario' ser numérico e você estar colocando o valor da variável 'login' entre aspas simples, ou seja, o valor de 'login' é String.

 

bem em resumo vou mandar um código que provavelmente funciona no seu caso ai tá.:

 

ASP

[*]

 

[*]

 

[*]login=Request.form("login")

 

[*]

 

[*]senha=Request.form("senha")

 

[*]

 

[*]set conexao Server.CreateObject("ADODB.Connection")

 

[*]conexao.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("nome do seu banco.mdb")

 

[*]

 

[*]SLQ "select * from usuarios where usuario='"&login&"' and senha='"&senha&"'" 

 

[*]

 

[*]Set ins=conexao.execute(SLQ)

 

[*]

 

[*]if ins.eof then

 

[*] response.redirect("/")

 

[*]else

 

[*] response.redirect("home.asp?id_user="&ins("id_user")&"")

 

[*]end if

 

[*]

 

[*]

 

 

Espero ter ajudado e espero não ter falado de mais :D . Abraço.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei lá derrepente naum estaria na sua conexão o problema?E uma opiniao..Não seria melhor você guardar isso em uma session?Flw'sAbraçoEspero ter ajudado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como disse o Mario, um dos campos não deve ser Texto no banco de dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo de dados incompativeis..possivelmente o que os brothers falaram..algum campo do seu banco está com o tipo diferente do modo que você está comparando.para campos texto, você usa a aspa simples.para campos numero, você nao usa a aspa simples.

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.