Ir para conteúdo

POWERED BY:

Arquivado

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

hunger

Paginação

Recommended Posts

So mais uma coisa sei que é bacana mostrar cada propriedade do objeto recorset fica bem explicado mais fica muito longo tb, no inicio sempre fazia assim tb

 

ASP [/tr][tr]RSNoticia.Fields.Item("TITULO_NOTICIA").Value[/tr]

 

Mas como Fields, Item e Value são padrões na chamada do objeto, voce pode usar assim

 

ASP [/tr][tr]RSNoticia("TITULO_NOTICIA")[/tr]
ah, legal, nao tinha visto isso. vou arrumar.

 

valew.

 

 

ah, como essa msg ficou na segunda pagina, fiquei com medo de q vcs nao vissem o q falei anteriomente, o problema mesmo está na pagina anterior....aqui é só um comentario....hehehehe......

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha velho, to tentando tentando aqui..... mas nao consigo fazer funcionar. na verdade acabei pegando um trecho do codigo q tinha isso e funcionava perfeitamente, mas agora joguei na pagina aqui e fica dando um erro...o erro é o seguinte:**********************************************ADODB.Recordset error '800a0e79' Operation is not allowed when the object is open. /noticias/noticias3.asp, line 60 **********************************************o trecho do código que incluí naquela pagina q estavamos mexendo é:

Dim RS__MMColParamRS__MMColParam = "ativa"If (Request("MM_EmptyValue") <> "") Then   RS__MMColParam = Request("MM_EmptyValue")End IfDim RSDim RS_numRowsRS.Source = "SELECT * FROM Noticias WHERE STATUS = '" + Replace(RS__MMColParam, "'", "''") + "' ORDER BY ID DESC"RS.CursorType = 0RS.CursorLocation = 2RS.LockType = 1RS.Open()RS_numRows = 0
Esta primeira parte do código é para que só seja exibido os textos que estão ativos (ha uma opção no momento do cadastro da matéria onde você escolhe se quer o texto ativo ou inativo. o certo é que sejam exibidos apenas os textos ativos). e a segunda parte seria para ordenar conforme registro.olha, isso eu peguei da página q tenho aqui qdo td funcionava, mas sem a paginação. com a paginação essa parte toda ficou de fora. tentei colocar agora, mas como sou uma porta mesmo com programação, imagino q esteja errando absurdamente em algo.o código da página com esse trecho ae de cima é:
<% 'Efetuando a conexão com a base de dados criada -----------------------Set Conn = Server.CreateObject("AdoDb.Connection") Conn.provider="Microsoft.Jet.OLEDB.4.0" Conn.connectionstring="e:\home\dad\dados\BancoNoticias.mdb" Conn.open '--------------------------------------------------------------------------'Vamos criar o objeto Record Set -> neste caso é necessário declará-lo,'pois vamos utilizar algumas funções deste objeto Set RS = Server.CreateObject("adodb.recordset")RS.PageSize = 5 'quantidade de registros por página. Você pode alterar sem conforme precise.'Vamos fazer a busca na tabela contatosSQL = "select * from noticias" RS.Open SQL,Conn,3,3'Vamos agora verificar exceções do tipo “fim de arquivo” (EOF), se a página atual é menor 'que zero, se é maior que o número total de páginas, etc.IF RS.EOF then Response.Write "nenhum registro encontrado"Response.End 'paramos o programaELSE'Definindo em qual pagina o visitante estáIF Request.QueryString("pagina")="" then intpagina=1 ELSEIF cint(Request.QueryString("pagina"))<1 thenintpagina=1 ELSEIF cint(Request.QueryString("pagina"))> RS.PageCount then intpagina=RS.PageCount ELSEintpagina=Request.QueryString("pagina")END IFEND IFEND IFEND IF'Fim das verificações de exceções'Usamos a propriedade AbsolutePage para dizer ao RS que página ele esta RS.AbsolutePage=intpagina' Inicia o contador que vai controlar os registros mostradosintrec=0%><table width="578" border="0" cellpadding="4" cellspacing="1"><% Dim RS__MMColParamRS__MMColParam = "ativa"If (Request("MM_EmptyValue") <> "") Then   RS__MMColParam = Request("MM_EmptyValue")End IfDim RSDim RS_numRowsRS.Source = "SELECT * FROM Noticias WHERE STATUS = '" + Replace(RS__MMColParam, "'", "''") + "' ORDER BY ID DESC"RS.CursorType = 0RS.CursorLocation = 2RS.LockType = 1RS.Open()RS_numRows = 0'Enquanto o contador for menor que a quantidade de registros mostrados ou' não for o final do arquivo While intrec < RS.PageSize and not RS.EOF '------------------- AQUI VEM TUDO O QUE SERÁ PAGINADO -----------------------If (cor = "#EFF1F5") Thencor = "#F8F9FC"Elsecor ="#EFF1F5"End If%><tr align="left" valign="top" class="texto"> <td width="29%" valign="middle" bgcolor="<%=cor%>" class="texto"><strong><%=(RS.Fields.Item("TITULO_NOTICIA").Value)%></strong></td><td width="53%" valign="middle" bgcolor="<%=cor%>" class="texto"> <div align="left"><%response.write Left ((RS.Fields.Item("TEXTO_NOTICIA").Value),45)%>...</div></td><td width="12%" valign="middle" bgcolor="<%=cor%>"><div align="right"><%=(RS.Fields.Item("DATA").Value)%></div></td><td width="6%" valign="middle" bgcolor="<%=cor%>"> <div align="center"><a href="View.asp?ID=<%=(RS.Fields.Item("ID").Value)%>">Leia</a></div></td></tr><% '---------------------------------------------------------------------------------------------RS.MoveNext' Acrescenta +1 ao contadorintrec=intrec+1 'Se for EOF (fim de arquivo), imprimir branco na telaIF RS.EOF then response.write " " END IFWend 'fim do loop%></table><%'Vamos verificar se não é a página 1, para podermos colocar o link “anterior”. IF intpagina > 1 then %> <a href="noticias3.asp?pagina=<%=intpagina-1%>">Anterior</a> <% END IF'Se não estivermos no último registro contado, então é mostrado o link p/ a próxima página IF strcomp(intpagina,RS.PageCount) <> 0 then %> <a href="noticias3.asp?pagina=<%=intpagina + 1%>">Próxima</a> <% END IF%><%RS.Close()Set RS = Nothing%>
Agradeço a paciencia desde já....rs http://forum.imasters.com.br/public/style_emoticons/default/blush.gif abço.
Segue meu problema, q ficou na pagina anterior.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eh o seguinte você estava usando o recordset RS lá em cima, e tentou usar lá em baixo com ele aberto.La em cima você seleciona todas noticioas e mais abaixo as noticias WHERE STATUS = '" + Replace(RS__MMColParam, "'", "''") antes de abrir denovo da um RS.close()

Compartilhar este post


Link para o post
Compartilhar em outros sites

legal....agora ele está listando por ordem de registro. mas....rs...essa "mas" é fd...ele está apenas exibindo os 5 primeiros registro... mesmo mudando de página, ele continua mostrando os mesmos 5 registros... o qp ode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah, só mais uma coisa tbem....

 

como eu faço para q ele liste os dados por ordem de registro? pq assim, qdo eu cadastro uma nova materia, coloco uma data. como eu faria para ele listar da mais recente à mais antiga?

bem cara não estou mais entendendo o que você está fazendo se você só queria ordenar por que você não colocaou este WHERE e o ORDER BY lá no select lá em cima?

 

Faz isso, deleta esse segundo recordset RS, não vejo necessidade

 

só poe

 

 

[tr][/tr][tr][/tr]
ASP "SELECT * FROM Noticias WHERE STATUS = '" + Replace(RS__MMColParam, "'", "''") + "' ORDER BY ID DESC"

 

no lugar de

 

[tr][/tr][tr][/tr]
ASP "select * from noticias"

 

e o resto deleta

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, farei isso. apesar de q listando na ordem ele ja está. a unica coisa mesmo q estou quebrando a cabeça agora é q ele só exibe as mesmas noticias. tp, como na pagina está para exibir 5 por página, ele exibe os primeiros 5 e pronto! mais nada... mesmo clicando no "proximo" ele abre a outra pagina mostrando os mesmos 5.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim é isso que estou falando...antes de tentar exibir na ordem estava paginando corretamente??se estava, vai continuar paginando

Compartilhar este post


Link para o post
Compartilhar em outros sites

antes estava....

 

 

ok, a parte q devo apagar então é essa?

 

Dim RSDim RS_numRowsRS.Source = "SELECT * FROM Noticias WHERE STATUS = '" + Replace(RS__MMColParam, "'", "''") + "' ORDER BY ID DESC"RS.CursorType = 0RS.CursorLocation = 2RS.LockType = 1RS.Open()RS_numRows = 0

Compartilhar este post


Link para o post
Compartilhar em outros sites

issogo to hellpra esse codigocomo disse só aproveita o select

Compartilhar este post


Link para o post
Compartilhar em outros sites

hehehe, ta certo....bom, tirei o q disse q tiraria, e coloquei aquela linha de código no lugar da q você falou, la em cima.agora está retornando como: "nenhum registro encontrado", conforme está pedindo pra fazer ali no código....to irritado com td isso aqui ja....

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que e aquele parametro no WHEREo STATUSpode ser isso que esteja retornando pesquisa vaziafaz este mesmo select numa pege sem paginação e ver se retorna normal

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro parou. joguei essa parte aqui lá em cima junto com o order by.Dim RS__MMColParamRS__MMColParam = "ativa"If (Request("MM_EmptyValue") <> "") Then RS__MMColParam = Request("MM_EmptyValue")End Ifagora listou certo. mudando as paginas tbem corretamente!mais uma vez, obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro parou. joguei essa parte aqui lá em cima junto com o order by.Dim RS__MMColParamRS__MMColParam = "ativa"If (Request("MM_EmptyValue") <> "") Then RS__MMColParam = Request("MM_EmptyValue")End Ifagora listou certo. mudando as paginas tbem corretamente!mais uma vez, obrigado!!!

bem era isso que ia pedir pra você testar, uma vez que seu SQL estava usando a variavel MMColParam Mas que bom que está funcionado http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

po, valeu mesmo...parece bobeira falar isso, mas você nao imagina a ajuda q dá, nao só você como a todos q estão nos foruns por ae dividindo conhecimentos.... às pessoas q nao manjam, mas precisam fazer de qquer jeito, como é o meu caso.obrigado mesmo!e desculpe qquer coisa... imagino q as vezes passa pela cabeça: "pq um fdp desse nao sabe mexer e fica enchendo...." rs.... mas é o trampo ne velho, tenho q entregar o negocio, me virar pra fazer e tals....acredito q nao va demorar mto pra postar alguma outra duvida, mas pelos menos acho q o pior ja foi!valeu! :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

po, valeu mesmo...parece bobeira falar isso, mas você nao imagina a ajuda q dá, nao só você como a todos q estão nos foruns por ae dividindo conhecimentos.... às pessoas q nao manjam, mas precisam fazer de qquer jeito, como é o meu caso.obrigado mesmo!e desculpe qquer coisa... imagino q as vezes passa pela cabeça: "pq um fdp desse nao sabe mexer e fica enchendo...." rs.... mas é o trampo ne velho, tenho q entregar o negocio, me virar pra fazer e tals....acredito q nao va demorar mto pra postar alguma outra duvida, mas pelos menos acho q o pior ja foi!valeu! :D

na verdade acho que aprendo mais do que ensino, pois quando respondo uma pergunta estou praticando e renovando conhecimento e quando não respondo penso ainda não sei isso vou tentar aprender, todos estamos aprendendo ainda, não é só você
"pq um fdp desse nao sabe mexer e fica enchendo...."
bem eu não pensa assim , mas tem quem pense eu sei dissoquanto a postar denovo, tranquilo cara, pode postar mesmo

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.