Hello I have a problem with a conditional if when I put as a condition
if ($pagina > $total_paginas || $pagina <= 0) {
header('Location:index.php?pagina=1');
}
the number of rows are 7 of mysql
stored in $ total_pages and the variable $ page
is 1, then if the user puts 8 in the url pagina=8
redirects me to
index.php?pagina=1
perfect !! now when I put in the url pagina=0
I get this error
Uncaught Error: Call to a member function fetch_assoc ()
-.- I leave all the code below ...
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Paginación</title>
</head>
<body>
<?php
include_once "includes/bdd.php";
$con = openCon('includes/databases.ini');
$con -> set_charset('utf8');
$por_pagina = 5;
if (isset($_GET['pagina'])) {
$pagina = $_GET['pagina'];
}
else {
$pagina = 1;
}
$empieza = ($pagina - 1 ) * $por_pagina;
$sql = "SELECT * FROM usuarios LIMIT $empieza, $por_pagina";
$resultado = $con -> query($sql);
?>
<div class="container">
<h2>Lista De Correo</h2>
<table class="table">
<thead class="thead-dark">
<tr>
<th>Nombre</th>
<th>Email</th>
<th>País</th>
</tr>
</thead>
<tbody>
<?php
while ($fila = $resultado -> fetch_assoc()) {
?>
<tr>
<td><?php echo $fila['nombre'] ?></td>
<td><?php echo $fila['email'] ?></td>
<td><?php echo $fila['pais'] ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
<?php
$sql = "SELECT * FROM usuarios";
$resultado = $con -> query($sql);
$total_registros = $resultado -> num_rows;
$total_paginas = ceil($total_registros / $por_pagina);
/*ERROR NO TOMA EN CUENTA $PAGINA <= 0 SOLAMENTE!!!*/
if ($pagina > $total_paginas || $pagina <= 0) {
header('Location:index.php?pagina=1');
}
?>
<!-- Paginacion -->
<ul class="pagination justify-content-center">
<li class="page-item <?php echo $pagina <= 1 ? 'disabled' : '' ?>">
<a class="page-link" href="index.php?pagina=<?php echo $pagina - 1 ?>">
Anterior
</a>
</li>
<?php
for ($i = 0; $i < $total_paginas; $i++) {
?>
<li class="page-item <?php echo $pagina == $i + 1 ? 'active' : '' ?>">
<a class="page-link" href="index.php?pagina=<?php echo $i + 1 ?>">
<?php echo $i + 1 ?>
</a>
</li>
<?php
}
?>
<li class="page-item <?php echo $pagina >= $total_paginas? 'disabled' : '' ?>">
<a class="page-link" href="index.php?pagina=<?php echo $pagina + 1 ?>">
Siguiente
</a>
</li>
</ul>
<!-- Fin paginación -->
</div>
</body>
</html>