Jump to content


Photo

Paginação Em Dados


  • Faça o login para participar
6 replies to this topic

#1 inter7

inter7

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino

Posted 04/08/2005, 13:34

Ola amigos consegui achar um artigo de paginação no wmonline , mas eu não consegui adapta-lo ,

Será que possam me dar uma força , gostaria de determinar um numero que noticias que irão aparecer na pagina , exemplo 10 noticias e as demais aparecer nas paginas seguintes , em DESC ,

Nesta forma que estou usando esta aparecendo apenas as 20 ultimas noticias e na verdade preciso que elas fiquem paginadas , desde ja agradeço vcs todos , grato :
Cristian ,

Segue codigo :

<?
require_once('Connections/conecta.php');
?>
<?

  mysql_select_db($database_conecta, $conecta);
  $noticia = mysql_query("select * from noticia order by codigo desc limit 20");
  while($row_noticia = mysql_fetch_assoc($noticia)){
  ?>

   
<link href="/interstyle.css" rel="stylesheet" type="text/css">
<div align="center"></div>
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
  <tr>
    <th scope="col"><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#CCFFFF">
      <tr>
        <td width="74" class="style3" scope="col"><table width="99%"  border="1" cellpadding="0" cellspacing="0" bordercolor="#CCFFFF">
            <tr>
              <th scope="col"><? if($row_noticia[foto]<>''){?>
                  <a href="noticia_inteira.php?cod=<? echo $row_noticia[codigo];?>"> <img src="<? echo $row_noticia[foto];?>" width="60" border="0"> </a>
                  <? }?></th>
            </tr>
        </table></td>
        <td width="11" class="style3" scope="col">&nbsp;</td>
        <td width="933" class="style3" scope="col"><div align="center" class="menu">
            <div align="left">
              <table width="100%"  border="0" cellspacing="0" cellpadding="0">
                <tr>
                  <th scope="col"><div align="left"><a href="noticia_inteira.php?cod=<? echo $row_noticia[codigo];?>" class="titulo3"><? echo $row_noticia['titulo'];?></a></div></th>
                </tr>
              </table>
            </div>
        </div></td>
      </tr>
      <tr bgcolor="EFF5F5">
        <td colspan="3" class="style3" scope="col"><div align="center"><span class="style1"><? echo substr($row_noticia['texto'],0,100);?></span></div></td>
      </tr>
    </table></th>
  </tr>
</table>
<? }?>


Edição feita por: inter7, 04/08/2005, 13:36.


#2 henriquefr

henriquefr

    12 Horas

  • Usuários
  • 209 posts
  • Sexo:Não informado
  • Localidade:Cuiabá-MT
  • Interesses:PHP, Ajax e JavaScript.

Posted 04/08/2005, 14:21

eu tinha pego uma vez um aki nesse forum tbm ..
eu mudei muita coisa nele .. ate deixei ele mais simples ...
se quiser posso postar ele aki ...
falow
<?php

?>

#3 inter7

inter7

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino

Posted 04/08/2005, 14:23

eu tinha pego uma vez um aki nesse forum tbm ..
eu mudei muita coisa nele .. ate deixei ele mais simples ...
se quiser posso postar ele aki ...
falow

Pocha henriquefr .

Seria bom demais se vc me ajuda-se nisso ai ,

Obrigado, valeus

#4 <?PHPMAN?>

<?PHPMAN?>

    Ativo

  • Usuários
  • 300 posts
  • Sexo:Não informado

Posted 04/08/2005, 14:54

Abaixo segue a paginacao que uso em tudo que faço:

<?
$sql = "SELECT * FROM tabela ORDER BY id DESC";
$resultado = mysql_query($sql)or die ("Erro: ".mysql_error());
$lpp = 20; //itens por p&aacute;gina
$total = mysql_num_rows($resultado);
$paginas = ceil($total / $lpp);
if(!isset($pagina)) { $pagina = 0;}
$inicio = $pagina * $lpp;

$sql = "SELECT * FROM tabela ORDER BY id DESC LIMIT $inicio, $lpp";
$resultado = mysql_query($sql)or die ("Erro: ".mysql_error());
//====================================

while ($linha=mysql_fetch_array($resultado)){
	$dado = $linha["dado"];

echo $dado;

}

// ==============PAGINAÇÃO==================================
if($pagina > 0) {
$menos = $pagina - 1;
$url = "$PHP_SELF?pagina=$menos";
echo " <a href='$url'>anterior</a>"; // Vai para a página anterior
}
//================
$atual = ($pagina + 1);
//================
for($i=0;$i<$paginas;$i++) { // Gera um loop com o link para as páginas
$pg = $i+1;
if ($pg == $atual)
{
	$pg = "<font color=red>".$pg."</font>";
}
else
{
	$pg = $pg;
}
$url = "$PHP_SELF?pagina=$i";
echo "<b><a href='$url'>$pg</a></b>";
}
if($pagina < $paginas-1) {
$mais = $pagina + 1;
$url = "$PHP_SELF?pagina=$mais";
echo "<a href='$url'>proximo</a>";
}
// ===========PAGINAÇÃO==================================================
?>

e para listar somente 100 noticias por exemplo, basta vc definir o (LIMIT 100), na primeira SQL.
Nome: Luciano André Bruch
WebSite: www.guiamedianeira.com.br
Profissão: WebDesigner / Programador
MSN:luciano@guiamedianeira.com.br

#5 xdr4p

xdr4p

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte/MG

Posted 04/08/2005, 15:01

Ola amigos consegui achar um artigo de paginação no wmonline , mas eu não consegui adapta-lo...

Bom eu não vou tem tempo para analizar o código que você postou, mais vou indicar para você alguns links interesantes sobre paginação de resultados, que no meu ponte de vista, serão de grande valia para você.

OBS: Os links são todos do site PHPBRASIL

Artigos
* Criando uma simples paginação de resultados
Por: Diego Mascarenhas
* Paginação de Resultados - Parte II
Por: Diego Mascarenhas
* Paginação de Resultados
Por: fsantana.fsc

Codigos
* Classe Navbar
* Paginacao em PHP/mySql
* Paginação de Registros MySQL
* Paginação Resultados em MySQL

Recomendao tambem uma busca no Google sobre o assunto PAGINAÇÂO os resultados são bem interessantes.

OBS: Espero ter ajudado. (y)
Diante da ambigüidade, recuse a tentação de adivinhar.

Python Powered

#6 henriquefr

henriquefr

    12 Horas

  • Usuários
  • 209 posts
  • Sexo:Não informado
  • Localidade:Cuiabá-MT
  • Interesses:PHP, Ajax e JavaScript.

Posted 04/08/2005, 15:05

<?php //Faz a consulta no banco de dados
$result = mysql_query("SELECT * FROM `pais` ORDER by nomepais ASC");
$num_rows = mysql_num_rows($result);
$reg_p_pag = 7; // aki eh resultado por pagina .. no caso 7.
$pag = $_GET['pag'];
$busca = mysql_query("SELECT count(*) FROM `pais` ORDER by nomepais ASC");
$registros = mysql_result($busca,0);
$num_total_paginas = ($registros%$reg_p_pag==0)?$registros/$reg_p_pag:floor($registros/$reg_p_pag)+1;
if (!$pag)
$pag = 1;
$inicio = ($reg_p_pag*$pag)-$reg_p_pag;
$query = "SELECT * FROM `pais` ORDER by nomepais ASC LIMIT $inicio, $reg_p_pag";
$result = @mysql_query($query);
while ($row = mysql_fetch_assoc($result))
{
$arqpais = $row['arqpais'];
$nomepais = $row['nomepais'];
$id = $row['id'];
?>

COLOQUE O SEU DOGIGO AKI

<?php } ?>

<?php //aki ele faz a paginação ( Anterior - Proximo)
$anterior = $pag-1;
if ($anterior<1)
echo "";
else
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$anterior\" class=paginacao><<</a>";
if($i<=$pag+$link_p_pag)
echo "&nbsp;&nbsp;&nbsp;<a href=\"{$_SERVER['PHP_SELF']}?pag=$i\" class=paginacao>$i</a>";
$proxima = $pag+1;
if ($proxima>$num_total_paginas)
echo "";
else
echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$proxima\" class=paginacao>>></a>"; ?>


esse eh soh o codigo da paginaçao ....
<?php

?>

#7 inter7

inter7

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino

Posted 04/08/2005, 15:25

Po pessoal valeus mesmo , vo rachar os cranios aqui e montar a parada , assim meu sistema de noticias ficou bem pratico , se alguem estiver meio que precisando só falar , mas primeiro deixa eu encaixar essa paginação !!

Agradeço a todos que colabraram comigo , !

Em seguida postarei o resultado ok ?

Abraços !!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq