criacaoi7 0 Denunciar post Postado Junho 4, 2008 hargon eu terei que fazer deste jeito, incluindo isto no código acima que já exibe os dados da escola... <% rsDados = "SELECT * FROM Cidades where id_cidade" connstring = "Microsoft.Jet.OLEDB.4.0;Data Source=c:\web\olimpiadaconsespcombr\database\BD_DADOS.mdb" Set Conexao = Server.CreateObject("ADODB.Connection") Conexao.Open connstring, "","" Set rsDados = Conexao.Execute (q) While not tabela.EOF response.write tabela("cidade").value tabela.movenext wend %> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 4, 2008 Não entendi. Obs. Você mandou executar Q e a consulta está em rsDados. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 5, 2008 Oi Hargon, eu estou perguntando pra você o processo. Mudei a string de RsDados para RsCidade. Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 5, 2008 A sim, agora entendi. Você não precisa fazer dessa forma. Dentro do while de escola você poderia ser algo assim: while not escolas.eof set cidades = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & escolas("id_cidade")) if not cidades.eof then response.write cidades("nomeDaCidade") end if cidades.close set cidades = nothing escolas.movenext wend Obs. Isso foi só um exemplo. Altere o nome das variáveis. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 6, 2008 oi hargon, porque deu este erro? Erro de tempo de execução do Microsoft VBScript erro '800a01a8' Objeto necessário: 'escolas' /cidades/exibe_escolas2.asp, line 20 Minha linha 20 ficou assim (Código parcial) while not escolas.eof <% 'Abrimos a Conexão com o Banco Dim caminho Dim conexao Dim id_cidade Dim cidades id_cidade = request.querystring("id_cidade") if not isnumeric(id_cidade) then id_cidade = 0 end if Set conexao = Server.CreateObject("ADODB.Connection") conexao.provider= "Microsoft.Jet.OLEDB.4.0;Data Source=c:\web\olimpiadaconsespcombr\database\BD_DADOS.mdb" conexao.open 'Selecionamos todos os Produtos da Tabela Set rsDados = Server.CreateObject("ADODB.Recordset") strDados = "SELECT * FROM Cadastro_Escolas WHERE id_cidade = " & id_cidade & " ORDER BY id_escola" rsDados.open strDados, conexao, 3, 3 while not escolas.eof set cidades = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & escolas("id_cidade")) if not cidades.eof then response.write cidades("cidade") end if cidades.close set cidades = nothing escolas.movenext wend 'Definimos o Numero de Paginas com a propriedade "PageSize" do objeto Recordset rsDados.PageSize = 10 'Criamos as Validações if rsDados.eof then Mensagem = "Nenhum Registro Encontrado" Response.End else 'Definimos em qual pagina o visitante está if Request.QueryString("pagina")="" then intpagina = 1 else if cint(Request.QueryString("pagina"))<1 then intpagina = 1 else if cint(Request.QueryString("pagina"))>rsDados.PageCount then intpagina = rsDados.PageCount else intpagina = Request.QueryString("pagina") end if end if end if end if %> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 6, 2008 Obs. Isso foi só um exemplo. Altere o nome das variáveis. Como eu deixei em observação... foi só um exemplo. Você não tem a variável escolas... você usa rsDados... Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 6, 2008 Oi hargon, entendi. Bem vou tentar montar. Fiz umas modificações e cai neste erro: Erro de tempo de execução do Microsoft VBScript erro '800a000d' Tipos incompatíveis /cidades/exibe_escolas2.asp, line 22 Na linha 22 começa o select da cidade, set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & id_cidade("id_cidade")) if not rsDados.eof then response.write cidade("cidade") end if rsDados.close set rsDados = nothing rsDados.movenext wend Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 6, 2008 Veja o que está em negrito: set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & id_cidade("id_cidade")) Não seria? cidade("cidade") Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 9, 2008 hargon, retorna: Microsoft JET Database Engine erro '80040e14' Erro de sintaxe (operador faltando) na expressão de consulta 'id_cidade ='. /cidades/exibe_escolas2.asp, line 19 Meu select está assim: 'Selecionamos todos os Produtos da Tabela Set rsDados = Server.CreateObject("ADODB.Recordset") strDados = "SELECT * FROM Cadastro_Escolas WHERE id_cidade = " & id_cidade & " ORDER BY id_escola" rsDados.open strDados, conexao, 3, 3 while not rsDados.eof set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & cidade("cidade")) if not rsDados.eof then response.write cidade("cidade") Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 9, 2008 Pela mensagem de erro, id_cidade está vazio. Talvez a variável não esteja recebendo nada. Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Junho 9, 2008 De onde recupera id_cidade? Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 9, 2008 Fiz umas alterações e olha o erro agora, Erro de tempo de execução do Microsoft VBScript erro '800a000d' Tipos incompatíveis /cidades/exibe_escolas2.asp, line 22 Linha 22>> set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & cidade("cidade")) Mário na página anterior a esta eu clico no nome da cidade, aonde envia a ID, veja: <% response.write "<a href=""exibe_escolas2.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Junho 9, 2008 isso cidade("cidade")) vem de onde? Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 13, 2008 Oi pessoal, estive ausente, mas retornei. Mário esse cidade("cidade")) é da tabela cidades, campo cidade (nome da cidade). Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Junho 13, 2008 Mas o valor esta vindo de outro formulario? pelo que parece esta errado isso Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 13, 2008 Mário é para funcionar assim... A página anterior ela envia a id da cidade que eu cliquei... então nesta página em que ocorre o erro, ele exibe os dados para aquela cidade, no caso, lista as escolas da cidade que eu cliquei... veja como está o select: <% 'Abrimos a Conexão com o Banco Dim caminho Dim conexao Dim id_cidade Dim escolas Dim cidade id_cidade = request.querystring("id_cidade") if not isnumeric(id_cidade) then id_cidade = 0 end if Set conexao = Server.CreateObject("ADODB.Connection") conexao.provider= "Microsoft.Jet.OLEDB.4.0;Data Source=c:\web\olimpiadaconsespcombr\database\BD_DADOS.mdb" conexao.open 'Selecionamos todos os Produtos da Tabela Set rsDados = Server.CreateObject("ADODB.Recordset") strDados = "SELECT * FROM Cadastro_Escolas WHERE id_cidade = " & id_cidade & " ORDER BY id_escola" rsDados.open strDados, conexao, 3, 3 while not rsDados.eof set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & cidade("cidade")) if not rsDados.eof then response.write cidade("cidade") end if rsDados.close set rsDados = nothing rsDados.movenext wend 'Definimos o Numero de Paginas com a propriedade "PageSize" do objeto Recordset rsDados.PageSize = 10 'Criamos as Validações if rsDados.eof then Mensagem = "Nenhum Registro Encontrado" Response.End else 'Definimos em qual pagina o visitante está if Request.QueryString("pagina")="" then intpagina = 1 else if cint(Request.QueryString("pagina"))<1 then intpagina = 1 else if cint(Request.QueryString("pagina"))>rsDados.PageCount then intpagina = rsDados.PageCount else intpagina = Request.QueryString("pagina") end if end if end if end if %> Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Junho 13, 2008 Voce recupera assim id_cidade = request.querystring("id_cidade") Deveria usar set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & id_cidade) E nao set rsDados = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & cidade("cidade")) Outro erro é que esta criando outro RS com o mesmo nome dentro do loop do rsDados , tem qeu pelo menos mudar o nome Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 18, 2008 Oi Mário, bom dia. Fiz a correção e estou com um errono response, linha 24: response.write cidade("cidade") Meu select: while not rsDados.eof set rsCidade = Conexao.Execute ("SELECT * FROM cidades where id_cidade=" & id_cidade) if not rsCidade.eof then response.write cidade("cidade") Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 19, 2008 Troca cidade("cidade") por rsCidade("cidade"). Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Junho 19, 2008 Faça o que o hargon disse pois voce nao tem um RS de nome cidade Compartilhar este post Link para o post Compartilhar em outros sites