Ir para conteúdo

POWERED BY:

Arquivado

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

razstec

procura numa base de dados

Recommended Posts

Pessoal isto nao deveria ser suficiente para fazer uma pesquisa numa base de dados?

 

<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="art">	<p><input type="text" name="art" size="20" id="art"><input type="submit" value="ok" name="art"></p></form></body></html><%DataPath = Server.MapPath("dbsniffit/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPath & ";Persist Security Info=False"rs.fields("art")=artsql = "SELECT * FROM insprocura WHERE artigo LIKE " & art & ";"DBCon.Execute(sql)DBCon.CloseSet DBCon = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

está dando que erro??o campo "artigo" nao é texto? se for precisa de aspas simplesalem do mais se "art" contiver apenas parte do conteudo que voce quer precisa adicionar % antes e depois da variavel conforme o que voce pretende procurarficaria algo assimsql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';"

Compartilhar este post


Link para o post
Compartilhar em outros sites

to a ter este erro :(

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: 'art'

 

/sniffit/search.asp, line 26

 

<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="art">	<p><input type="text" name="art" size="20" id="art"><input type="submit" value="ok" name="art"></p></form></body></html><%DataPath = Server.MapPath("db/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPath & ";Persist Security Info=False"rs.fields("art")=artsql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';" DBCon.Execute(sql)DBCon.CloseSet DBCon = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troca a linha rs.fields("art")=art por art = request.form("art")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Viva, obrigado parece ter resolvido mas agora dame o erro de que nao encontra na bd assim como em outras paginas que estao bem mas ele insiste em dizer que nao encontra o campo.

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: ''

 

/sniffit/search.asp, line 15

 

<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="art">	<p><input type="text" name="art" size="20" id="art"><input type="submit" value="ok" name="art"></p></form><table><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td><td text=black><%=rs.Fields("artigo")%></td></table></body></html><%DataPath = Server.MapPath("db/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPath & ";Persist Security Info=False"art = request.form("art") sql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';" DBCon.Execute(sql)DBCon.CloseSet DBCon = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara,você está executando a string Sql(criando o RS) depois de solicitar o campo do BD..ou seja,você está criando o objeto depois de requisita-lo

Compartilhar este post


Link para o post
Compartilhar em outros sites

poe como ta seu codigo agora e que erro esta tendo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%DataPath = Server.MapPath("db/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPath & ";Persist Security Info=False"art = request.form("art") set rs = Server.CreateObject("ADODB.Recordset")sql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';" set rs = DBCon.Execute(sql)DBCon.CloseSet DBCon = Nothing%><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="art"> <p><input type="text" name="art" size="20" id="art"><input type="submit" value="ok" name="art"></p></form><table><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td><td text=black><%=rs.Fields("artigo")%></td></table></body></html>Item cannot be found in the collection corresponding to the requested name or ordinal.mas os campos estao bem ja verifiquei 2 vezes com a tabela e estao bem

Compartilhar este post


Link para o post
Compartilhar em outros sites

certeza de existir este campo artigo na tabela insprocura ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, existe eu ontem tive a falar com o ivan no msn e o script esta a funcionar no computador dele, isto parece ser um bloqueio qualquer do servidor :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

muito estranho tiozinhonao é normal da erro se ele nao existir, pelo menos nao um erro tão claro como este que esta afirmando que voce esta tentando usar algo que nao selecionouserá que por acaso nao existe um erro de digitação ai?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem um ; no final do SELECT, remove aquilo e faz um teste.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o codigo ja nao e o mesmo que esta em cima, eu logo quando chegar a casa posto aqui o codigo, mas e como eu disse o script ta a funcionar em casa dele por isso deve ser ao bloqueio de server

Compartilhar este post


Link para o post
Compartilhar em outros sites

ora ai vai

 

<%DataPath = Server.MapPath("db/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPathart = "$1nk"If request.form("art") <> "" then   art = request.form("art")end if set rs = Server.CreateObject("ADODB.Recordset")sql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';" rs.open sql, DBCon, 3%><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="form1">	<p><input type="text" name="art" size="20" id="art"><input type="submit" value="ok" name="art"></p></form><table><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td><td><% if not rs.eof then %><%=rs.Fields("artigo")%><% else %>nada foi localizado<% end if %></td></table></body></html><%DBCon.CloseSet DBCon = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, ja ta a funcionar :)

<%DataPath = Server.MapPath("db/dbsniffitdb.mdb")Set DBCon = Server.CreateObject("ADODB.Connection")DBCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataPathart = "$1nk"If request.form("artex") <> "" then   art = request.form("artex")end if set rs = Server.CreateObject("ADODB.Recordset")sql = "SELECT * FROM insprocura WHERE artigo LIKE '%" & art & "%';" set rs =  DBCon.Execute(sql)%><html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>New Page 1</title></head><body><form method="POST" name="form1">	<p><input type="text" name="artex" size="20" id="artex"><input type="submit" value="ok" name="arte"></p></form><table><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td><td><% if not rs.eof then %><%=rs.Fields("artigo")%><% else %>nada foi localizado<% end if %></td></table></body></html><%DBCon.CloseSet DBCon = Nothing%>

o unico problema e que so devolve um dado da tabela, eu ja tive a inventar com o loop mas nao consegui, alguma sujestao?

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque

<table><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td><td><% if not rs.eof then %><%=rs.Fields("artigo")%><% else %>nada foi localizado<% end if %></td></table>
por

<table><tr><td text=black width="64" bordercolor="#C0C0C0">Artigo: </td></tr><%if not rs.eof then do while not rs.eof%><tr><td><%=rs.Fields("artigo")%></td></tr><%rs.movenextloopelse %><tr><td>nada foi localizado</td></tr><% end if %></table>

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.