Ir para conteúdo

POWERED BY:

Arquivado

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

desisto

paginacao, loop, 2<>

Recommended Posts

é os eguinte

tenho varias paginas que tem paginacao e as div sao diferentes em cada caso - cor, texto, titulo, uns com foto e outros nao...

 

como o sistema de paginacao é igual, eu queria por numa funcao, pro caso de mudar ou editar alguma coisa no sistema

o problema seria em como fazer uma funcao onde pudesse criar condições diferentes em cada caso

 

uma solucao seria assim +-

function pag(exemplo1)

 

if exemplo1

isso isso e aquilo

elseif exemplo2

aquilo e aquele outro

...

 

tem alguma forma melhor pra fazer?

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poderia explicar melhor? Se tiver algum exemplo online ou uma imagem facilitaria para entender sua duvida.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você poderia usar um SELECT CASE, mas nao ficou muito claro onde você quer alterar o código, seria nas diferenças entre cor, texto, titulo, uns com foto e outros !

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo assim (acho que agora vai ficar mais visual):

tenho uma pagina para produtoA, produtoB, produtoC

ambos tem o mesmo sistema de paginacao e tem o layout diferente onde aparecem os produtos

 

produtoA - div verde

produtob - div amarelo

produtoc - div azul

 

 

no o meu atual, eu uso 3 paginacoes iguais, onde eu mudo apenas o conteudo do resultado

paginacao_produtoA

paginacao_produtob

paginacao_produtoc

 

 

com isso eu tenho 3 vezesm mais o que eu realmente precisava

 

o ultimo teste que fiz foi com select case mesmo, no lugar do if como tinha citado

funcionou...

eu chamo a funcao:

mostra_paginacao(numero_paginacao,"produtoA")

 

vou passar a tabela pela variavel tb pra ficar certo

 

 

o cod abaixo esta funcionando e funcional, mas tem alguma coisa que eu possa otimizar ainda mais?

valeu pessoal

 

 

Const NumPorPage			= 10'Numero de registros por página
Set rs_paginacao			= Server.CreateObject("adodb.recordset")
rs_paginacao.CursorLocation	= 3
rs_paginacao.CursorType		= 0
rs_paginacao.LockType		= 1
reg							= n_paginacao

sql_paginacao = "SELECT * FROM tabela ORDER BY empresa asc"
rs_paginacao.Open sql_paginacao,conn

If rs_paginacao.EOF Then
	response.Write("<a name=""conteudo""></a><div class=""titulo""><h3>"&sessao&"</h3></div>")
	response.Write("<div class=""Corpo_Conteudo""><p>Nenhum registro encontrado</p></div>")
else
rs_paginacao.CacheSize		= NumPorPage	'Define o tamanho do Cache = para o número de registros
rs_paginacao.MoveFirst						'Move o RecorSet para o início 
rs_paginacao.PageSize		= NumPorPage	'Coloca a quantidade de páginas
TotalPages					= rs_paginacao.PageCount
rs_paginacao.AbsolutePage	= reg			'Configura a página atual
Count						= 0				'Zera o contador

if CInt(reg) > CInt(TotalPages) then
	response.Redirect(redir)
end if

Select Case conteudo_paginacao
Case "praia"
DO WHILE NOT rs_paginacao.EOF And Count < rs_paginacao.PageSize 
%>
<div class="produtoA"><h3>
	<b class="titulo_exibe"><%=rs_paginacao("empresa")%></b>
	<b class="cidade"></b>
</h3><ul>
	<span>bla bla</span>
	<p>bla bla</p>
</ul></div>
<%
Count = Count + 1 
rs_paginacao.MoveNext
LOOP

Case Else
Response.Write("erro interno")
End Select

response.Write("<div id=""div_paginacao""><ul>")
if reg > 1 THEN 
	Response.Write("<li class=""anterior""><a href="""&link_atual&"_"® - 1&extensao_site&""">anterior</a></li>") 
else
	Response.Write("<li class=""anterior""><span class=""off"">anterior</span></li>")
end if
if CInt(reg) <> CInt(TotalPages) THEN 
	Response.Write("<li class=""proxima""><a href="""&link_atual&"_"® + 1&extensao_site&""">próxima</a></li>") 
else
	Response.Write("<li class=""proxima""><span class=""off"">próxima</span></li>")
end if

'Numeros para serem mostrados
max_n_mostrados		= 10
intervalo			= Int(max_n_mostrados /2)
inicio				= reg - intervalo
final				= reg + intervalo

if CInt(inicio) < 1 Then
	inicio	= 1
	final	= max_n_mostrados
end if

if CInt(final) > CInt(TotalPages) Then final = TotalPages
for i = inicio To final
	if CInt(i)=CInt(reg) Then
		Response.Write "<li><span class='on'>" & i & "</span></li>"
	end if
	if CInt(i) < CInt(reg) Then
		Response.Write "<li><a href="""&link_atual&"_"&i&extensao_site&""">" & i & "</a></li>"
	end if
	if CInt(i) > CInt(reg) Then
		Response.Write "<li><a href="""&link_atual&"_"&i&extensao_site&""">" & i & "</a></li>"
	end if
Next
response.Write("</ul></div>")
end if ' if que verifica se nao tem registro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você repete esse trecho de código 3 vezes?

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.