ASP- Acessar dados do BD  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
ferpelegrini
Smalltalk
[Avatar]

Membro desde: 16/06/2008 09:27:06
Mensagens: 1
Offline

Alguém pode me ajudar????

Estou com o seguinte problema:

No meu projeto foi definido que o usuário ao fazer o login teria deacordo com as permissões os links ou sua tela criada.
Por isso forma ciradas as seguintes tabelas : LOGIN, PERMISSOES, PERM_FUNC
Na tabela login e perm_func as campos : login = cod_func
Na tabela permissoes e permfunc os campos sao iguais : cod_perm.permissao = cod_perm.perm_func



O código é o seguinte:


Dim conexao
Dim sql
Dim sqlrs

'Antes tem que instanciar o objeto Connection
set conexao = Server.CreateObject("ADODB.Connection")
set sqlrs = server.CreateObject("ADODB.Recordset")

'Uma vez instanciado Connection podemos abri-lo e lhe atribuímos ao banco de dados onde vamos efetuar as operações
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("cachaca.mdb") & ";"

'Agora criamos a instrução SQL que nos servirá para falar ao BD
sql = "select * from login WHERE login= '"&user&"' AND senha='"&pass&"' "

'Executamos o SQL
Set sqlrs = conexao.Execute(sql)

'verifica se encontrou os dados
if sqlrs.EOF Then
Response.redirect "error.asp"
Response.end()

Else



Set sqlrs = conexao.Execute("Select * FROM permissoes a, perm_func b WHERE a.cod_perm = b.cod_perm and b.cod_func ='"&user&"'")

'Mostramos os registros
DO WHILE not sqlrs.eof
%>

<tr>
<td>
 
<a href= <%=sqlrs("a.nome_perm") %> ><%sqlrs("a.nome_perm")%> </a>
</td>
</tr>
<%
sqlrs.MoveNext

LOOP

END IF

'Fechamos o sistema de conexão

sqlrs.close
Set sqlrs = nothing

conexao.close



Todavia não estou conseguindo conectar e criar o link

aparece o seguinte erro:


ADODB.Recordset error '800a0cc1'

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

/cachacatamandua/inicial.asp, line 77


This message was edited 5 times. Last update was at 16/06/2008 10:01:56

Maracuja
GUJ Ranger
[Avatar]

Membro desde: 28/03/2006 10:18:44
Mensagens: 940
Localização: Behind the screen
Offline




Item cannot be found in the collection corresponding to the requested name or ordinal
ADODB.Recordset (0x800A0CC1)
Item cannot be found in the collection corresponding to the requested name or ordinal.
This like the error above is a recordset error. You have tried requesting a field from the recordset that does not exist.

Check when you are reading in the field from the recordset into a variable or to display in a web page that you have spelt the field name correctly and that the field exists in the database.


Ao que parece, você está buscando no recordset por um campo que não existe. Verifique sua tabela.

"Nunca deixarei de reclamar, mas espero reclamar de coisas melhores a cada dia..." Um amigo muito sabio
otaviofcs
Virtual Machine Man
[Avatar]

Membro desde: 21/12/2006 18:01:54
Mensagens: 511
Localização: Rio de Janeiro
Offline

estou achando que o problema é o nome da tabela. Quando você descreveu (erradamente até pois colocou campo.tabela e não o contrário), disse:



o nome da tabela é permissao ou permissoes?


visite o blog da Riopro em:
http://blog.riopro.com.br

Aumente a capacidade de inovação na sua empresa usando o Zest:
http://zest.com.br

Conheça também:
http://votebolsa.com.br
[WWW]
Silvafabiano
Entusiasta Java

Membro desde: 09/04/2006 13:37:04
Mensagens: 24
Offline

Na verdade o que tá dando erro aí é o



vc tem que colocar sem o alias ok.

tenta assim



Abraços
Pedrosa
JWizard
[Avatar]

Membro desde: 13/07/2005 13:08:08
Mensagens: 2505
Localização: São Paulo - Brasil
Offline

E o ASP tem um bug clássico de ' , sempre substitua ' por " com o replace evitar problemas de SQL Injection, de uma pesquisada sobre isso, se vc digitar um ' em qualquer campo e gerar erro a página esta desprotegida.
felipeguerra
GUJ Ranger

Membro desde: 26/03/2007 16:36:54
Mensagens: 987
Localização: São Paulo
Offline

Sem querer ser chato, mas pq vc não cria uma DLL para fazer a parte de acesso ao banco????????

"Antes da iluminação cortar lenha, carregar água. Depois da iluminação cortar lenha, carregar água..."
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team