Problema com paginação

Dúvidas sobre MySQL, PHPMyAdmin, SQL e assuntos relacionado a banco de dados.

Moderador: web

responder a dúvida

Problema com paginação

Mensagem por jujuba Offline » Qua Fev 01, 2012 11:58 am


Ola estou com problemas na minha paginação.
Meu script consiste de dos arquivos paginacao.php e consultab.php

Meu consulta B funciona perfeitamente obedecendo o numeros de registro limitado pelo LIMIIT, no entando meu paginação.php nao gera os links para as paginas proxima e anterior. As mesmas aparecem em meu site mas nao estão linkadas.
Segue o codigo:


consultab.php


Código: Selecionar todos
<br>
<table class="estilotabela"><tr><td class="estilocelulatitulo">CONSULTA POR TIPO DE DADO</td></tr></table>
<br>

<br><br>

<table width="100%" class="estilotabela">
<tr><td class="estilocelulat"><b>Estado</td><td class="estilocelulat"><b>Descrição</td><td class="estilocelulat"><b>Download</td></tr>
   

<?php

$numreg = 15;

$pg = isset ($_GET["pg"]) ? $_GET["pg"] :1;
$inicial = ($pg * $numreg) - $numreg;

//serve para contar quantos regitros voce tem na sua tabela para fazer a paginação

$totalDados = mysql_query("SELECT * FROM dado ORDER BY ano DESC");
$countTotal = count ($totalDados);

//faz o select pegando o registro inicial até a quantidade de registros para a pagina
$sql = mysql_query ("SELECT * FROM dado LIMIT $inicial, $numreg");

while ($row = mysql_fetch_array($sql)) {

/* aqui entra o caodigo para oexibir os dados */

echo "<tr>
   <td class=estilocelula>".$row["ano"]."</td>
   <td class=estilocelula>".$row["descricao"]."</td>
   <td class=estilocelula>".$row["arquivo"]."</td>
   </tr>";

}

?>

</table>

<?php

echo "<br><br>"; //quebra linha entre paginação e o conteudo


include ("paginacao.php");

?>



e paginacao.php

Código: Selecionar todos
<?php


$quant_pg = ceil ($countTotal/$numreg);
$quant_pg++;

$url_ant = $_SERVER['HTTP_REFERER'];


if ($pg > 1) {
   echo "<a href=".$url_ant.($pg -1)."><span='style2'>Anterior</span></a>&nbsp;";
} else {
   echo "<span class ='style2'>Anterior</span>&nbsp";
}

if (($pg - 4) < 1 ) {
   $anterior =1;
} else {
   $anterior = $pg - 4;
}
if(($pg +6) > $quant_pg) {
   $proximo = $quant_pg;
} else {
   $proximo = $pg +6;
}


for ($i_pg = $anterior ;$i_pg < $proximo; $i_pg++ ) {
   if ($pg == ($i_pg)) {
      echo "<span class='style3'>$i_pg</span>";
   } else {
      $i_pg2 = $i_pg;
      echo "&nbsp;<a href=.{$url_ant}{$i_pg2}><span class='style2'>$i_pg</span></a>&nbsp;";
   }
}

if (($pg+1) < $quant_pg) {
   echo "< a href=".$url_ant.($pg +1)."><span class='style2'>&nbsp;Proxima</span></a>";
   } else {
   echo "<span class='style2'>&nbsp;Proxima</span>";
}

?>

Grata

MOVIDO PARA SEÇÃO MYSQL



detalhes...


jujuba
MEMBRO
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am


Problema com paginação

Mensagem por web Offline » Qua Fev 01, 2012 2:39 pm

Você pode gerar um script de paginação completo nesse link

http://www.codigosnaweb.com/Paginacao-M ... 1-PHP.html

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12460
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

Problema com paginação

Mensagem por jujuba Offline » Sex Fev 03, 2012 4:13 pm

Obrigada, chequei sua sugestao, mas a mesma gera um erro no meu esqueleto_internet.php na mesma possuo as seguintes linhas
Código: Selecionar todos
$pagina    =   $_GET['pagina'];
  $dir       =   $_GET['dir'];
           
include ("../".$dir."/".$pagina.".php");


que sao indicadas com erros do tipo: Notice: Undefined index: dir in e Warning: include() [function.include]: Failed opening '..//2.php' for inclusion (include_path='.;C:\php\pear')

Pois a script sugerido indica meu link PROXIMA como echo "<a href=\"?pagina=$menos\">Proxima</a> "; ou seja nao ha um diretorio indicado. Oque fazer??

detalhes...


jujuba
MEMBRO
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am


Problema com paginação

Mensagem por web Offline » Sex Fev 03, 2012 4:24 pm

Pelo que ví são 2 problemas:

Primeiro você não deve estar mandando dir, pelo link, você tem que conferir isso. O segundo, é o link, você tem que definir o arquivo usado no link

<a href=\"arquivo.php?pagina=$menos\">

Ai talvez seja necessário você passar o dir pelo link, junto com o pagina

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12460
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

Problema com paginação

Mensagem por jujuba Offline » Sex Fev 03, 2012 4:37 pm

como nao enviar o diretorio pelo link? se nao o coloco obtenho outro erro.
Em todas as outra spaginas meu diretorio funciona. mas nao neste especifico...estou iniciando em php e nao sei bem o que fazer..

detalhes...


jujuba
MEMBRO
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am


Problema com paginação

Mensagem por web Offline » Sex Fev 03, 2012 5:35 pm

Você usa o dir para sua paginação?

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12460
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil


responder a dúvida

Voltar para MySQL

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes