Função pra paginação
Publicado por Wanderson 24/09/2007
[ Hits: 9.890 ]
Esta é uma função para ajudar a fazer a paginação em páginas PHP; ela reconhe alguns dados e cria um array contendo o total de páginas e um texto HTML com a paginação própriamente dita, que pode por exemplo ser colocada no topo e rodapé.
A sintaxe é
array paginar(PáginaAtual, TotalASerExibido, ExibiçõesPorPágina, URLParaOsLinks, FormatoDoTexto [<<, nada ou 'primeira' por exemplo], LimiteDeEspaçamento, ClasseCSSParaLinks, ClasseCSSParaInativos);
O indice 0 é o HTML e 1 é o total de páginas.
<? function paginar($atual, $total, $nopg, $url, $textos, $diferenca, $cssL, $cssN) { $limite = ceil($total / $nopg); $res[1] = $limite; # Primeira página if($atual == 1) { if($textos == 1) { $res[0] = " <span class=\"".$cssN."\">primeira</span> \n <span class=\"".$cssN."\">anterior</span> "; } else if($textos == 2) { $res[0] = " <span class=\"".$cssN."\"><<</span> \n <span class=\"".$cssN."\"><</span> "; } } else { if($textos == 1) { $res[0] = " <span class=\"".$cssL."\"><a href=\"".$url."1\">primeira</a> \n <a class=\"".$cssL."\" href=\"".$url.($atual - 1)."\">anterior</a></span> "; } else if($textos == 2) { $res[0] = " <span class=\"".$cssL."\"><a href=\"".$url."1\"><<</a> \n <a class=\"".$cssL."\" href=\"".$url.($atual - 1)."\"><</a></span> "; } } # Paginação $minimo = ($atual - $diferenca); if($minimo < 1) { $minimo = 1; } $maximo = ($atual + $diferenca); if($maximo > $limite) { $maximo = $limite; } #Pões reticências if($minimo > 1) { $res[0] .= "\n <span class=\"".$cssN."\">...</span> "; } for($i = $minimo; $i <= $maximo; $i++) { if($i == $atual) { $res[0] .= "\n <span class=\"".$cssN."\">".$i."</span> "; continue; } $res[0] .= "\n <span class=\"".$cssL."\"><a href=\"".$url.$i."\">".$i."</a></span> "; } #Põe reticências if($maximo < $limite) { $res[0] .= "\n <span class=\"".$cssN."\">...</span> "; } # Última página if($atual == $limite) { if($textos == 1) { $res[0] .= "\n <span class=\"".$cssN."\">próxima</span> \n <span class=\"".$cssN."\">última</span> "; } else if($textos == 2) { $res[0] .= "\n <span class=\"".$cssN."\">></span> \n <span class=\"".$cssN."\">>></span> "; } } else { if($textos == 1) { $res[0] .= "\n <span class=\"".$cssL."\"><a href=\"".$url.($atual + 1)."\">próxima</a> \n <a class=\"".$cssL."\" href=\"".$url.$limite."\">última</a></span> "; } else if($textos == 2) { $res[0] .= "\n <span class=\"".$cssL."\"><a href=\"".$url.($atual + 1)."\">></a> \n <a class=\"".$cssL."\" href=\"".$url.$limite."\">>></a></span> "; } } return $res; unset($atual,$total,$nopg,$url,$textos,$cssL,$cssN,$limite,$res); } ?>
guarda num arquivo txt o host, ip, data e hora de acesso do visitante
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
trocar linhas [RESOLVIDO] (11)
Firefox não abre em usuário não administradores (2)
Ubuntu com problemas no áudio (1)