Amigos, boa tarde!
Estou criando uma paginação para organizar minha tabela.
Criei bonitinho, porém quando eu clico num número de página qualquer, os resultados não aparecem.
Por exemplo: Eu tenho um botão consultar que envia do meu form via post os dados a serem consultados no banco.
Quando eu clico em consultar aparecem os 15 primeiros registros(conforme setei no select com LIMIT), porém quando eu clico na página 2 ou qualquer outra página, os dados não aparecem, simplesmente somem.
Alguém sabe o que pode ser?
include 'conexaoDB.php'; //paginação $quantidade = 15; $pagina = (isset($_GET['pagina'])) ? (int)$_GET['pagina']: 1; $inicio = ($quantidade * $pagina) - $quantidade; //query paginação $sqlTotal = " SELECT A.COD_SOLICITACAO FROM helpdesk.hdk_solicitacao A INNER JOIN helpdesk.hdk_solicitacao_motivo B ON A.COD_MOTIVO = B.COD_MOTIVO INNER JOIN helpdesk.hdk_usuario C ON A.COD_USUARIO = C.COD_USUARIO INNER JOIN helpdesk.hdk_solicitacao_status D ON A.COD_STATUS = D.COD_STATUS INNER JOIN helpdesk.hdk_solicitacao_grupo E ON A.COD_SOLICITACAO = E.COD_SOLICITACAO INNER JOIN hdk_priorizacao.matriz F ON A.COD_SOLICITACAO = F.COD_SOLICITACAO WHERE A.COD_STATUS in (".$statu.") AND A.DAT_CADASTRO BETWEEN " .$datIni. " AND ".$datFim." AND A.COD_TIPO IN(".$tip.") AND E.IND_RESPONSAVEL = 1 AND E.COD_ANALISTA IN (0,".$resp.") AND E.COD_GRUPO IN (0,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21) GROUP BY A.COD_SOLICITACAO ORDER BY A.COD_SOLICITACAO"; $qrTotal = mysql_query($sqlTotal) or die(mysql_error()); $numTotal = mysql_num_rows($qrTotal); $totalPagina = ceil($numTotal/$quantidade); //----------------------------------------------------------------------------// // query principal $sql = " SELECT A.DAT_CADASTRO, A.COD_SOLICITACAO, A.COD_TIPO, B.COD_MOTIVO, B.DES_MOTIVO, C.NOM_USUARIO, D.DES_STATUS, D.COD_COR, E.COD_ANALISTA, F.COD_DETERMINACAO, F.COD_IMPACTO, F.COD_ALINHAMENTO, F.COD_SITUACAO, F.COD_URGENCIA, F.COD_COMPLEXIDADE, F.COD_VIABILIDADE, F.COD_CUSTO, F.COD_PRAZO, F.COD_RISCOS, F.COD_TEMPO, F.OBSERVACAO FROM helpdesk.hdk_solicitacao A INNER JOIN helpdesk.hdk_solicitacao_motivo B ON A.COD_MOTIVO = B.COD_MOTIVO INNER JOIN helpdesk.hdk_usuario C ON A.COD_USUARIO = C.COD_USUARIO INNER JOIN helpdesk.hdk_solicitacao_status D ON A.COD_STATUS = D.COD_STATUS INNER JOIN helpdesk.hdk_solicitacao_grupo E ON A.COD_SOLICITACAO = E.COD_SOLICITACAO INNER JOIN hdk_priorizacao.matriz F ON A.COD_SOLICITACAO = F.COD_SOLICITACAO WHERE A.COD_STATUS in (".$statu.") AND A.DAT_CADASTRO BETWEEN " .$datIni. " AND ".$datFim." AND A.COD_TIPO IN(".$tip.") AND E.IND_RESPONSAVEL = 1 AND E.COD_ANALISTA IN (0,".$resp.") AND E.COD_GRUPO IN (0,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21) GROUP BY A.COD_SOLICITACAO ORDER BY A.COD_SOLICITACAO ASC LIMIT $inicio, $quantidade;"; $qr = mysql_query($sql) or die (mysql_error());
Depois vem o laço que monta minha tabela e no fim do código, coloquei isso:
//Paginação for ($i = 1; $i<= $totalPagina; $i++){ if($i == $pagina){ echo $i; }else{ echo " <a class='paginacao' href=\"?pagina=$i\">$i</a> "; } }
Sabem como resolvo isso?