Простая пагинация на PHP и MySQL

Простая пагинация на PHP и MySQL

28 февраля 2020 PHP , ,

Это руководство о том, как сделать простое разбиение на страницы, используя PHP и MySQL с плагином jQuery Simple Pagination.
Simplepagination.js — это простой плагин для jQuery, поддерживающий CSS3 и Bootstrap.

Шаг 1: Включаем все js и css файлы

Плагин jQuery Simple Pagination скачиваем отсюда.

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css">
<script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.js"></script>
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="dist/simplePagination.css" />
<script src="dist/jquery.simplePagination.js"></script>

Шаг 2: Создаём соединение с MySQL с использованием PHP

<?
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";

$conn = mysqli_connect($servername, $username, $password, $dbname) or die("Connection failed: " . mysqli_connect_error());
if (mysqli_connect_errno()) {
	printf("Ошибка соединения: %s\n", mysqli_connect_error());
	exit();
}
?>

Шаг 3: Создаём HTML таблицы с записями MySQL

<table class="table table-bordered">  
	<thead>  
	<tr>  
	<th>Имя</th>  
	<th>Оклад</th>
	<th>Возраст</th>  
	</tr>  
	</thead>  
	<tbody>  
	<?php
    $sql = "SELECT COUNT(id) FROM employee";  
    $rs_result = mysqli_query($conn, $sql);
	while ($row = mysqli_fetch_assoc($rs_result)) {
	?>  
		<tr>  
			<td><?php echo $row["employee_name"]; ?></td>  
			<td><?php echo $row["employee_salary"]; ?></td>  
			<td><?php echo $row["employee_age"]; ?></td>  
		</tr>  
	<?php  
	};  
	?>  
	</tbody>  
</table>
	  
<?php  
$sql = "SELECT COUNT(id) FROM employee";  
$rs_result = mysqli_query($conn, $sql);  
$row = mysqli_fetch_row($rs_result);  
$total_records = $row[0];  
$total_pages = ceil($total_records / $limit);  
$pagLink = "<nav><ul class='pagination'>";  
for ($i=1; $i<=$total_pages; $i++) {  
			 $pagLink .= "<li><a href='index.php?page=".$i."'>".$i."</a></li>";  
};  
echo $pagLink . "</ul></nav>";  
?>

Шаг 4: Вызываем метод simplePagination для контейнера разбиения на страницы

https://denis-romanov.pro/ — создание сайтов на CMS WordPress. Разработка посадочных страниц, блогов, порталов.

<script>
$(document).ready(function(){
	$('.pagination').pagination({
		items: <?php echo $total_records;?>,
		itemsOnPage: <?php echo $limit;?>,
		cssStyle: 'light-theme',
		currentPage : <?php echo $page;?>,
		hrefTextPrefix : 'index.php?page='
	});
});
</script>
Если вам понравилась статья, вы можете отблагодарить автора любой суммой, какую сочтете для себя приемлемой:
Остались вопросы по статье? Задайте их прямо сейчас!
Похожие записи
Работа с MySQL в PHP

Как в PHP установить соединение с базой данных MySQL, вывести, добавить и удалить записи из базы с помощью SQL запросов. Мы будем использовать подключение с помощью расширения Mysqli доступного в PHP начиная с версии 5.3. PHP подключение к MySQL Подключаемся Читать далее

Как выполнять SQL запросы WordPress с помощью класса wpdb

Взаимодействие с базой данных в CMS WordPress осуществляется с помощью класса wpdb. Класс позволяет осуществлять различные операции с базой данных, такие как добавление, удаление, обновление и вывод данных. Обращаться к базе данных необходимо через глобальную переменную $wpdb. Таким образом перед Читать далее

Перенос сайта на WordPress на другой домен

В повседневной работе часто приходится сталкиваться с переносом сайта на WordPress с локального или тестового домена на основной. Для этого необходимо не только скопировать файлы, базу данных и поменять настройки в конфигурационном файле, но и сделать ряд SQL-запросов, чтобы прописать Читать далее

Сохранение данных в форме после обновления страницы

Часто ли у вас случалось такое, что при заполнении формы на сайте истекал срок действия сеанса или например зависал браузер, после чего приходилось заполнять форму заново?! HTML5 представил концепцию механизмов хранения заполняемых данных в браузере. В хранилище HTML5 есть возможность Читать далее

Кастомный виджет переводчик для сайта с флагами

Сегодня мы кастомизируем стандартный виджет Google переводчика для сайта и сделаем его в виде меню с флагами. На данный момент сервис Google Translate Widget больше не поддерживается, но это никак не отразится на сайтах, которые были подключены ранее. Наш кастомный Читать далее

AJAX в 1C-Битрикс

В компонентах Битрикс есть встроенный функционал для AJAX подгрузки. Его так же можно использовать, например для бесконечного скролла новостей. Но есть и более простой способ, с помощью которого можно загружать ответ любого компонента без перезагрузки страницы. Его мы и рассмотрим Читать далее

Добавить комментарий

*

code