Сортировка таблиц в PHP

Несколько примеров как вывести данные из БД в таблицу и добавить к ней возможность сортировки.

Итак, простой вывод таблицы и базы:

<?php
/* Запрос в БД */
$dbh = new PDO('mysql:dbname=db_name;host=localhost', 'логин', 'пароль');
$sth = $dbh->prepare("SELECT * FROM `tours` ORDER BY `hotel`");
$sth->execute();
$list = $sth->fetchAll(PDO::FETCH_ASSOC);
PHP

Вывод:

<table>
	<thead>
		<tr>
			<th>Заезд</th>
			<th>Отель</th>
			<th>Курорт</th>
			<th>Тип номера</th>
			<th>Питание</th>
			<th>Цена</th>
		</tr>
	</thead>
	<tbody>
		<?php foreach ($list as $row): ?>
		<tr>
			<td><?php echo $row['date']; ?></td>
			<td><?php echo $row['hotel']; ?></td>
			<td><?php echo $row['city']; ?></td>
			<td><?php echo $row['type']; ?></td>
			<td><?php echo $row['food']; ?></td>
			<td><?php echo $row['price']; ?> EUR</td>
		</tr>
		<?php endforeach; ?>    
	</tbody>
</table>
HTML

Результат:

Основной принцип пользовательской сортировки основан на GET параметрах, к ссылке в href добавляется параметр ?sort=xxx со значением текущей сортировки. PHP-скрипт его получает, проверяет и подставляет в SQL-запрос.

Далее рассмотрим его детально на нескольких примерах:

09.10.2020

Комментарии 2

Uzbek No Uzbek No
15 октября 2020 в 14:47
0
Также напишите статью о php websocket
Uzbek No Uzbek No
15 октября 2020 в 14:54
0
как получить от 03.10.2020, от 02.10.2020, от 01.10.2020? Только один с даты

, чтобы добавить комментарий.

Другие публикации

Задача: получить из БД интернет-магазина товары в следующем порядке - сначала идут товары у которых цена составляет от 6 000 до 20 000 руб, далее все остальные в порядке возрастания цены.
1730
0
В статье приведены основные примеры работы с расширением PHP PDO. Такие как подключение к БД, получение, изменение и...
36530
-1
CSS-свойство display table и другие, делают вывод группы элементов подобно таблице, но с ограничением – объединения ячеек colspan и rowspan не поддерживаются.
6205
0
В продолжении статей о рамках у ячеек таблицы, сделаем их появление по клику с помощью JQuery.
3176
+2
Представленные способы помогут сделать алфавитный список (указатель) разбитый на колонки, для вывода например станций метро, производителей, категорий и т.д.
3238
0
В этой статье приведены примеры использования оператора ORDER BY для сортировки записей в MySQL.
1171
+1