criacaoi7 0 Denunciar post Postado Maio 30, 2008 hargon já fiz a correção... as cidades estão sendo listadas sim, mas agora tenho um novo errado em estado... ADODB.Field erro '80020009' BOF ou EOF são verdadeiros, ou o registro atual foi excluído. A operação solicitada pelo aplicativo requer um registro atual. /cidades/paginacao.asp, line 0 Pelo que entendo isso quer dizer que não tem dado correto, mas ele está exibindo as cidades e porque não os estado de cada uma??? Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Maio 30, 2008 Não seria melhor seu código ficar assim? <% if not rsDados.eof then while not rsDados.eof %> <tr> <td> <% response.write "<a href=""exibe.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> </td> <td id="Dados"> <%=rsDados("estado")%> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if Wend end if rsDados.close set rsDados = nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Maio 31, 2008 hargon fiz os ajustes analisando o modelo que me passou mas caiu num erro de end esperado na linha 130. Coloquei o end if na linha 130, mas retorna um erro de condição wend. A linha 130 é a penúltima linha, aonde está assim: Set rsDados = Nothing Meu código está assim agora: <% if not rsDados.eof then while not rsDados.eof%> <% response.write "<a href=""exibe.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> </td> <td id="Dados"> <%=rsDados("estado")%> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if Wend rsDados.close set rsDados = nothing %> <tr> <td colspan="2" id="Dados"> <% 'Criamos as Validações para a navegação "Anterior" e "Próximo" if intpagina>1 then %> <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> <% end if if StrComp(intpagina,rsDados.PageCount)<>0 then %> <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a> <% end if rsDados.close Set rsDados = Nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Maio 31, 2008 Você fechou o rsDados duas vezes e colocou um IF a menos. Deixe assim: <% if not rsDados.eof then while not rsDados.eof%> <% response.write "<a href=""exibe.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> </td> <td id="Dados"> <%=rsDados("estado")%> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if Wend %> <tr> <td colspan="2" id="Dados"> <% 'Criamos as Validações para a navegação "Anterior" e "Próximo" if intpagina>1 then %> <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> <% end if if StrComp(intpagina,rsDados.PageCount)<>0 then %> <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a> <% end if end if rsDados.close Set rsDados = Nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Maio 31, 2008 Hargon voltou em outro problema... Ele estava pedindo wen nesta linha embaixo (veja últimas linhas do código anterior) end if end if rsDados.close Set rsDados = Nothing Wend %> Eu inseri, aí retornou um novo erro pra linha 90, esta linha: <% 'Iniciamos o Loop rsDados.AbsolutePage = intpagina intrec = 0 While intrec<rsDados.PageSize and not rsDados.eof %> Veja link: http://www.olimpiadaconsesp.com.br/cidades/paginacao.asp Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Maio 31, 2008 voce nao fecha este rs em algum momento? Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Maio 31, 2008 Você não pode colocar WEND só porque está pedindo e principalmente no local que está pedindo. Muitas vezes é só sugestão do interpretador (mas ele não analisa o código da mesma forma que você). Veja que lá em cima já tem um WEND. Posta o código da forma que está agora. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Maio 31, 2008 O erro atual é este: Erro de compilação do Microsoft VBScript erro '800a03fa' 'Wend' esperado /cidades/paginacao.asp, line 129 Na linha 129 eu tenho isso: Set rsDados = Nothing Veja o código completo: hargon o código está assim agora: <% 'Iniciamos o Loop rsDados.AbsolutePage = intpagina intrec = 0 While intrec<rsDados.PageSize and not rsDados.eof %> <tr> <td id="Dados"> <% if not rsDados.eof then while not rsDados.eof%> <% response.write "<a href=""exibe.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> </td> <td id="Dados"> <%=rsDados("estado")%> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if Wend %> <tr> <td colspan="2" id="Dados"> <% 'Criamos as Validações para a navegação "Anterior" e "Próximo" if intpagina>1 then %> <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> <% end if if StrComp(intpagina,rsDados.PageCount)<>0 then %> <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a> <% end if end if rsDados.close Set rsDados = Nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Maio 31, 2008 Realmente falta um WEND, e o IF está no lugar errado... Tenta esse código agora. <% 'Iniciamos o Loop if not rsDados.eof then rsDados.AbsolutePage = intpagina intrec = 0 While intrec<rsDados.PageSize and not rsDados.eof %> <tr> <td id="Dados"> <% 'while not rsDados.eof%> <% response.write "<a href=""exibe.asp?id_cidade="& rsDados("id_cidade") & """>" & rsDados("cidade") & "</a><br>" %> </td> <td id="Dados"> <%=rsDados("estado")%> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if 'Wend %> <tr> <td colspan="2" id="Dados"> <% 'Criamos as Validações para a navegação "Anterior" e "Próximo" if intpagina>1 then %> <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> <% end if if StrComp(intpagina,rsDados.PageCount)<>0 then %> <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a> <% end if wend end if rsDados.close Set rsDados = Nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Maio 31, 2008 hargon deu certo... MUITO OBRIGADO :) veja link: http://www.olimpiadaconsesp.com.br/cidades/paginacao.asp Note que na página exibe é listado todas as escolas e não exibida a respectiva escola pra ciade clicada. Como eu faço o select neste caso pra listar as escolas apenas daquela cidade que eu cliquei? Veja como está o meu atual select: <% 'Abrimos a Conexão com o Banco Dim caminho Dim conexao 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 ORDER BY id_escola" rsDados.open strDados, conexao, 3, 3 '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 Maio 31, 2008 Eu não entendi muito bem o que você quer, mas tenta isso: id_cidade = request.querysting("id_cidade") if not isnumeric(id_cidade) then id_cidade = 0 end if strDados = "SELECT * FROM Cadastro_Escolas WHERE id_cidade = " & id_cidade & " ORDER BY id_escola"Se não for isso, explica de novo. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 1, 2008 hargon o que eu quero é que quando eu clicar na página anterior em São Paulo, nessa página exibe seja exibido apenas as escolas da cidade de São Paulo. Pelo que entendi o select que você fez ta certo. Porque estou com este erro: Erro de tempo de execução do Microsoft VBScript erro '800a01b6' O objeto não dá suporte para a propriedade ou método: 'request.querysting' /cidades/exibe.asp, line 6 Minha linha 6 está assim: id_cidade = request.querysting("id_cidade") Veja parte do código: <% 'Abrimos a Conexão com o Banco Dim caminho Dim conexao Dim id_cidade id_cidade = request.querysting("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 'Definimos o Numero de Paginas com a propriedade "PageSize" do objeto Recordset rsDados.PageSize = 10 Muito obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 1, 2008 id_cidade = request.querystring("id_cidade") Corrige aí... escrevi errado. rs Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 1, 2008 hargon, muito obrigado, agora deu certo... ainda não cadastrei uma escola pra testar certinho, mas aparentemente tá funfando... Muito obrigado. Pra fechar este tópico vai mais uma dúvida. Nesta página que exibe as escolas de uma determinada cidade, como eu posso inserir na frente de cada escola listada um botão para deletar a escola, excluindo ela do bando de dados. Muito obrigado hargon por tudo. Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 2, 2008 Posta as linhas do WHILE que exibe a escola. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 2, 2008 Segue código. Obrigado. <% 'Abrimos a Conexão com o Banco Dim caminho Dim conexao Dim id_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 '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 %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Tutorial de Paginação</title> <style> /* Criei estas CSSs somente para melhorar o layout da Tabela de Paginação. Vocês podem modificar ao seus gostos... usem e abusem...:) */ .TProdutos{ border: 1px solid #666666; margin: 2px 0px 2px 0px; background: #FFFFFF; border-collapse:collapse; width: 400px; } .TProdutos td { border: 0px solid #666666; border-collapse:collapse; } .TProdutos td#Titulo { border: 0px solid #666666; font: 7pt Verdana, Arial, Helvetica; height: 17px; background: #6699FF; color:#FFFFFF; } .TProdutos td#Dados { border: 1px solid #CCCCCC; font: 7pt Verdana, Arial, Helvetica; height: 18px; background: #EAEFFF; color: #666666; } </style> </head> <body> <table border="0" align="center" class="TProdutos"> <tr> <td width="90" id="Titulo">Cidade</td> <td width="298" id="Titulo">Estado</td> </tr> <% 'Iniciamos o Loop rsDados.AbsolutePage = intpagina intrec = 0 While intrec<rsDados.PageSize and not rsDados.eof %> <tr> <td id="Dados"> </td> <td id="Dados"> </td> </tr> <tr> <td colspan="2" id="Dados"> <p>Escola: <%=rsDados("escola")%> <br> Endereço: <%=rsDados("endereco")%> <br> complemento: <%=rsDados("complemento")%> <br> CEP: <%=rsDados("CEP")%> <br> Telefone: <%=rsDados("telefone")%> <br> Fax: <%=rsDados("fax")%> <br> Site: <%=rsDados("site")%> <br> E-mail: <%=rsDados("email")%> </p> </td> </tr> <% rsDados.MoveNext intrec = intrec + 1 if rsDados.eof then response.write " " end if Wend %> <tr> <td colspan="2" id="Dados"> <% 'Criamos as Validações para a navegação "Anterior" e "Próximo" if intpagina>1 then %> <a href="paginacao.asp?pagina=<%=intpagina-1%>">Anterior</a> <% end if if StrComp(intpagina,rsDados.PageCount)<>0 then %> <a href="paginacao.asp?pagina=<%=intpagina + 1%>">Próximo</a> <% end if rsDados.close Set rsDados = Nothing %> </td> </tr> </table> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 2, 2008 Existem várias formas, uma delas é a que fiz abaixo. <tr> <td colspan="2" id="Dados"> <p>Escola: <%=rsDados("escola")%> <br> Endereço: <%=rsDados("endereco")%> <br> complemento: <%=rsDados("complemento")%> <br> CEP: <%=rsDados("CEP")%> <br> Telefone: <%=rsDados("telefone")%> <br> Fax: <%=rsDados("fax")%> <br> Site: <%=rsDados("site")%> <br> E-mail: <%=rsDados("email")%> </p> </td> <td> <a href="excluir.asp?p=<%=rsDados("id_escola")%>"><img border="0" alt="Excluir" src="botao.gif" /></a> </td> </tr> Veja que acrescentei uma coluna com o botão, e você deve criar a página de exclusão do registro. Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 2, 2008 hargon ao invés de um botão, como eu posso colocar a imagem excluir que é um xizinho em gif??? hargon esquece a minha pergunta... não tinha notado que o botão é imagem... rs... Compartilhar este post Link para o post Compartilhar em outros sites
criacaoi7 0 Denunciar post Postado Junho 2, 2008 hargon, criei a página de exclusão, mas estou com algum erro nesta parte do código, pois não está excluindo o registro. Veja parte do código de exclusão: <% Option Explicit Response.Expires = 0 Dim objConn, stringSQL, strConnection, array_id, i, sql_id, id_escola id_escola = request.querystring("id_escola") 'Caso ocorra algum erro os precessos não são interrompidos 'e é passado para a próxima linha de comando 'On error Resume Next ' Conectando com o banco de dados contato.mdb Set objConn = Server.CreateObject("ADODB.Connection") objConn.Open "DBQ=c:\web\olimpiadaconsespcombr\database\BD_DADOS.mdb;Driver={Microsoft Access Driver (*.mdb)}" 'Deletando registro da tabela contato onde esta a id %> <html> <head> <LINK REL=stylesheet HREF="liks_etc.css" TYPE="text/css"> <title>::Cidades::</title> </head> <body bgcolor="#FFFFFF"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td> <% if err = 0 and id_escola <> "" then array_id = split(id_escola,",") For i=0 to ubound(array_id) sql_id = sql_id & "id_escola.autonum = " & Trim(array_id(i)) & " OR " 'campo texto, entao" & Trim(array_id(i)) & " OR " 'caso numerico '" & Trim(array_id(i)) & "' OR " Next sql_id = left(sql_id,(len(sql_id)-4)) stringSQL = "DELETE * FROM cadastro_escola WHERE "&sql_id&"" objConn.Execute(stringSQL) objConn.close Set objConn = Nothing %> Compartilhar este post Link para o post Compartilhar em outros sites
hargon 64 Denunciar post Postado Junho 2, 2008 Não entendi muito bem seu código... mas seguindo meu raciocinio inicial, acho melhor você remover isso: array_id = split(id_escola,",") For i=0 to ubound(array_id) sql_id = sql_id & "id_escola.autonum = " & Trim(array_id(i)) & " OR " 'campo texto, entao" & Trim(array_id(i)) & " OR " 'caso numerico '" & Trim(array_id(i)) & "' OR " Next sql_id = left(sql_id,(len(sql_id)-4)) stringSQL = "DELETE * FROM cadastro_escola WHERE "&sql_id&"" objConn.Execute(stringSQL) objConn.close Set objConn = NothingE colocar isso: stringSQL = "DELETE * FROM cadastro_escola WHERE id_escola = "&id_escola objConn.Execute(stringSQL) objConn.close Set objConn = Nothing Compartilhar este post Link para o post Compartilhar em outros sites