Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
GokuBlack

PHP Paginação Como alterar a ordem 1234 para 4321

Recommended Posts

Estou aprendendo a paginar com PHP, fiz uma paginação más quero que ela seja  assim :

Ex: Páginas ...,5,4,3,2,1.

No momento ela está assim : Páginas 1,2,3,4,5 ...

Segue o código:

<?php
$total = 0;
$sql = "SELECT COUNT(*) as c FROM posts";
$sql = $pdo->query($sql);
$sql = $sql->fetch();
$total = $sql['c'];
$paginas = $total / 5;


$pg = 1;
if(isset($_GET['p']) && !empty($_GET['p'])){
    $pg = addslashes($_GET['p']);
}
$p = ($pg - 1) * 4;

$sql = "SELECT * FROM posts LIMIT $p, 4";
$sql = $pdo->query($sql);
?>
<body>
	<div id="title">
		<h1>...</h1>
		
		<h3>&nbsp ...</h3>
	</div>
	<nav id="menu">
    	<ul>
    		<li><a href="../index.php"><b>Home</b></a></li>
  			<li><a href=""><b>...</b></a></li>
  			<li><a href=""><b>P..</b></a></li>
  			<li><a href=""><b>Co...</b></a></li>
  		</ul>
	</nav>
	<img src="img/imgteste.jpg" width="1340px" height="250" /><br/><br/>
	<form method="POST">
		Pesquisar:<br/>
		<input type="text" name="pesquisar" />
		<input type="submit" value="Enviar" />
	</form>
	<div id="cont"><br/><br/>
	 <?php
	 
	 if($sql->rowCount() > 0) {

	foreach($sql->fetchAll() as $item) {
    echo '<hr/>'.'<a href="./?poemas='.($item['id']).'">'.($item['titulo']).'</a>'; echo '<br />'.$item['corpo'].'<br />'.$item['data'].'<br/>';
	}
    }
    echo "<hr/>";
    
    for($q=0;$q<$paginas;$q++) {
    echo '<a href="./?p='.($q+1).'">('.($q+1).')</a>';    
    };
	 
	 ?>
	</div>
	<br/>
	<div id="rod">
		<footer id="rod">
			<br/>
		...
	    </footer>

	</div>
	
</body>
</html>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@GokuBlack Experimenta fazer um for decrementando o valor.

 

exemplo:

$total = 5;

for($total; $total >= 1; $total--):
   echo $total. "/ ";
endfor;

Isso mostraria:   5 / 4 / 3 / 2 / 1

 

Do jeito que você quer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×