7
When I do the query I get the following result [imagem1]
By clicking to go to page 2, I get the following result [imagem2]
That is, on page "1" everything working with the total results displayed (10) and the total of links (2), only when going to page "2", appears many more links, which indicates that he consulted and returned every table, filled in the respective amount of links and showed the wrong content on page 2.
Obs:
19 fields with the term CONFEF; 10 results per pagination; 4 links to previous and next page; 77 fields in table doubts;
php form.
<body>
<form name="frmBusca" method="post" enctype="multipart/form-data" action="pesquisa.php?pag=1" >
<input type="text" name="palavra" />
<input type="submit" value="Buscar" />
</form>
</body>
php search.
<!-- Inicio do Sistema de Busca Interna -->
<?php
//Se pg não existe atribui 1 a variável pag
$pag = (isset($_GET['pag'])) ? (int)$_GET['pag'] : 1 ;
if($pag=='0'){
$pag = '1';
}
// Pegamos a palavra
$palavra = trim($_POST['palavra']);
$maximo = '10';
//Atribui a variável inicio o inicio de onde os registros vão ser mostrados por página, exemplo 0 à 10, 11 à 20 e assim por diante
$inicio = ($pag * $maximo) - $maximo;
$sql = "SELECT * FROM duvidas WHERE resposta LIKE '%$palavra%' LIMIT ".$inicio. ", ". $maximo;
try {
$consulta = $conecta->prepare($sql);
$consulta->execute();
$conecta->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$resultado = $consulta->fetchAll();// Recuperar todos valores encontrados
$count = $consulta->rowCount(PDO::FETCH_ASSOC);// Quantos registros foram encontrados
}catch (PDOException $erro) {
die("Não foi possível conectar ao banco de dados :" . $erro->getMessage());
}
if ($count != 0) {
foreach($resultado as $res){
$pergunta = $res['pergunta'];
$id = $res['id'];
echo '<br>';
echo '<a href="http://exemplo.com.br/visualizar_resposta.php?id='.$id.'">• <span style="color:black; font-size:10px;">'.$pergunta.'</span></strong>';
echo '<br>';
}
//echo "Foram encontrados ".$count." registro(s)";
}
// Se não houver registros
else {
echo "Nenhum produto foi encontrado com a palavra ".$palavra."";
}
?>
<!-- Fim Sistema de Busca Interna -->
<!-- Inicio Paginação -->
<?php
// Query de consulta
$sql = "SELECT * FROM duvidas WHERE resposta LIKE '%$palavra%'";
try {
$consulta = $conecta->prepare($sql);
$consulta->execute();
$conecta->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$resultado = $consulta->fetchAll();// Recuperar todos valores encontrados
$count = $consulta->rowCount(PDO::FETCH_ASSOC);// Quantos registros foram encontrados
}catch (PDOException $erro) {
die("Não foi possível conectar ao banco de dados :" . $erro->getMessage());
}
$paginas = ceil($count/$maximo);
$links = '4';
echo '</br></br></br><ul id="paginacao">';
echo '<li><a href="pesquisa.php?pag=1" >Primeira</a></li>';
for($i = $pag-$links; $i <= $pag-1; $i++){
if($i <= 0){
}else{
echo '<li><a href="pesquisa.php?pag='.$i.'">'.$i.'</a></li>';
}
}
echo "<li>$pag</li>";
for($i = $pag+1; $i <= $pag+$links; $i++){
if($i > $paginas){
}else{
echo '<li><a href="pesquisa.php?pag='.$i.'">'.$i.'</a></li>';
}
}
echo '<li><a href="pesquisa.php?pag='.$paginas.'">Última</a></li></br></br></br>';
echo'</ul>';
?>
<!-- Fim Paginação -->
Hello, if the answer below is not enough, try incorporating this Paging with PHP + Mysqli - Complete & Explained
– Edilson