<?php
/*=================== Ficheiros ===================*/
# Conexão BD #
include "functions/functions.php";
$db = conBD();
# Session #
include "actions/session.php";
# Head #
include "files/head_footer.php";
if ($login_type === "2") {
$char = '';
/****** Paginação ******/
$perPage = 1;
$queryCount = "SELECT id_user FROM utilizador";
if (isset($_GET['char'])) {
$queryCount .= " WHERE nome LIKE '$char%'";
}
$results = $db->query($queryCount);
$totalResults = $results->rowCount();
$nPages = ceil($totalResults/$perPage);
if (!isset($_GET['page'])) {
$page = 1;
} else {
$page = $_GET['page'];
}
$firstResult = ($page-1)*$perPage;
/****** ******/
$query = "SELECT * FROM utilizador JOIN user_type ON user_type.id_user_type = utilizador.user_type JOIN user_status ON user_status.id_user_status = utilizador.user_status";
if (isset($_GET['char'])) {
$char = $_GET['char'];
$char = preg_replace("#[a-z]#i",'',$char);
$query .= " WHERE utilizador.nome LIKE '$char%'";
}
$query .= " LIMIT $firstResult,$perPage";
$sql = $db->query($query);
$nResult = $sql->rowCount();
gerarHeadAdmin("Utilizadores","utilizadores");
?>
Onde crio a barra com todas as letras:
<?php
$character = range('A', 'Z');
echo '<ul class="pagination justify-content-center" aria-label="Page navigation example">';
$class = (!isset($_GET['char'])) ? ' class="active page-item" ' : 'class="page-item"' ;
echo '<li '.$class.'><a class="page-link" href="utilizadores">Todos</a></li>';
foreach($character as $alphabet)
{
$class = ($_GET['char'] == strtolower($alphabet)) ? ' class="active page-item" ' : 'class="page-item"' ;
echo '<li '.$class.'><a class="page-link" href="utilizadores/1/'.strtolower($alphabet).'">'.$alphabet.'</a></li>';
}
echo '</ul>';
?>