Ir para conteúdo

Arquivado

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

Paulo Cézar Júnior

Erro acontece na ID

Recommended Posts

Oi pessoal, tudo bem.

 

Eu estou com o seguinte erro abaixo numa paginação.

 

 

Tipo de erro:

ADODB.Recordset (0x800A0CC1)

O item não pode ser encontrado na coleção correspondente ao nome ou ao ordinal solicitado.

/nr/Paginação/paginacao2.asp, line 149

 

Na linha 149 eu tenho isso:

 

IF categoria = 0 Then

response.write "<a href=noticia.asp?id="& rsBusca("id") & ">" & rsBusca("titulo") & "</a> ( " & rsBusca("categoria") & " )" Else

 

O erro acusa que não está encontrando um campo na tabela. Eu verifiquei a tabela e todos os campos conferem.

 

O problema está ocorrendo neste campo, rsBusca("id")

 

Quando eu substitui ID por data a paginação funcionou perfeitamente, mas quando eu volo ID dá este erro...

 

Como posso resolver este problema, pode me ajudar.

 

Obrigado.

 

Abaixo código completo:

 

<%	'********************************************************	'********************************************************%><% Option Explicit %><!-- #include file = "adovbs.inc" --><% Const PAGE_SIZE = 3	'quantidade de itens na página.'Declarando as variaveisDim Conexao			' string para conexãoDim rsBusca			' string do recordsetDim rsDim rs1Dim strSQL			' string SQLDim strSearch		' string para fixar o texto procuradoDim iPageCurrent	' string para Pagina CorrenteDim iPageCount		' string para contar números de paginas do recorsetDim iRecordCount	' string do contadorDim I				' variável de indica a página atualDim categoria		' variável de indica a categoria escolhidaDim strURL			' variável que indicará o endereço do sitestrURL = Request.ServerVariables("URL")categoria = request("categoria") ' variável de retornoSub abre_conexao		' Criando uma conexão com o Banco de Dados	Set Conexao = Server.CreateObject("ADODB.Connection")	Conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("noticias.mdb") &";"End subIF categoria = "" Then categoria  = 0If Request.QueryString("page") = "" Then	' Abertua inicial	iPageCurrent = 1Else	iPageCurrent = CInt(Request.QueryString("page"))End If%><html><head><title>Paginação do Guardião</title><style>a:hover {  text-decoration: underline}a {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; font-weight: bold; text-decoration: none}</style><!-- Javascript para onChange do ListMenu --><script LANGUAGE="JavaScript">function Menu() {		document.forms.myform.submit();		}</SCRIPT></head><body bgcolor="#ACBbbb" text="#000000" link="#000000" alink="#000000" vlink="#000000"><!-- MONTANDO O LIST MENU COM AS CATEGORIAS --><FORM NAME="myform" ACTION="<%=strURL%>" METHOD=POST >  <table width="400" cellpadding="1" cellspacing="0" border="0" align="center">	<tr><td><font face="Verdana,Arial" color="#000000" size=1>Categoria:</font><select name="categoria" onChange="Menu();">	<option value="0" selected>(Todos)</option>		<%		Call abre_conexao		' Abrindo a conexão criada		Set rs = Server.CreateObject("ADODB.RecordSet")		' Selecionando as categorias através de uma instrução SQL		rs.Open "SELECT  * FROM categorias", conexao		While not rs.eof		' Criando um Loop		IF Trim(categoria) = Trim(rs("ID")) Then		%>		<option value="<%=rs("ID")%>" selected ><%=rs("categorias")%></option>		<% Else %>	<option value="<%=rs("ID")%>"><%=rs("categorias")%></option>		<%		End IF		rs.movenext			' próximo registro		Wend				 		rs.close			' fechando o recordset		set rs = Nothing	' destruindo o recordset		%></select>		</td></tr></table></Form><!-- INÍCIO DA PAGINAÇÃO EM UMA TABELA --><%	IF categoria = 0 Then	' verifica se alguma categoria foi escolhida		strSQL = "SELECT * FROM categorias INNER JOIN noticias ON categorias.ID = noticias.categoria "	Else					' se foi determina uma condição		strSQL = "SELECT * FROM categorias INNER JOIN noticias ON categorias.ID = noticias.categoria WHERE categorias.ID = "& Trim(categoria) & " ORDER BY categoria"	End IF	' criando um Recordset referente a categoria escolhida	Set rsBusca = Server.CreateObject("ADODB.Recordset")	rsBusca.PageSize  = PAGE_SIZE	rsBusca.CacheSize = PAGE_SIZE	' abre a conexão e executa o recordset	rsBusca.Open strSQL, Conexao, adOpenStatic, adLockReadOnly, adCmdText	iRecordCount = rsBusca.RecordCount	iPageCount   = rsBusca.PageCount	If iRecordCount = 0 Then	' se nenhum registro for encontrado%><table width="400" cellpadding="1" cellspacing="0" border="0" align="center">  <tr>		<td><font face="Verdana,Arial" color="#000000" size=1>			<%="Nenhum registro foi encontrado"%>	</font></td>	</tr></table><%	Else				' caso contrário monta a paginação	rsBusca.AbsolutePage = iPageCurrent		' determina qual página deve ser exibida%><table width="400" cellpadding="1" cellspacing="0" border="0" align="center">  <tr>		<td><font face="Verdana,Arial" color="#000000" size=1>		<%	'faz as contagens dos registros encontrados		response.write iRecordCount & " registros encontrados.<br>"		response.write "Página " & iPageCurrent & " de " & iPageCount		%>		</font></td>	</tr>	<tr><td> </td></tr></table>	<table width="400" cellpadding="1" cellspacing="0" border="0" align="center">  <%	' novo loop, verificando a página a ser exibida	While Not rsBusca.EOF And rsBusca.AbsolutePage = iPageCurrent %>   <tr>	<td bgcolor="#0099CC"><b><font color="#000333" face="verdana" size="1"> <%	IF categoria = 0 Then  response.write "<a href=noticia.asp?id="& rsBusca("id") & ">" & rsBusca("titulo") & "</a> ( " & rsBusca("categoria") & " )"  Else	response.write rsBusca("titulo")	End IF	%> </font></b></td>  </tr>  <tr>	<td><font color="#000333" face="verdana" size="1"> <% response.write rsBusca("descricao") %> 	  </font></td>  </tr>  <% 	rsBusca.MoveNext		' próximo registro	Wend	%> </table><table width="400" cellpadding="1" cellspacing="0" border="0" align="center">  <tr><td> </td></tr>	<tr>		<td><font face="Verdana,Arial" color="#000000" size=1>		<%		' informa que página o usuário está da paginação		response.write "Páginas: "		For I = 1 To iPageCount			If I = iPageCurrent Then				response.write "[" & I & "]" 			Else				' criamos um link a categoria escolhida e a 				' página a ser mostrada				%><a href="<%= strURL %>?categoria=<%=categoria%>&page=<%= I %>"><%= I %></a> <%			End If		Next	End If%>		</font></td></tr></table><%rsBusca.CloseSet rsBusca = NothingConexao.CloseSet Conexao = Nothing%></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro diz que voce está tentando recuperar um valor que nao foi selecionado

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.