ウェブサイトのページングと並べ替え機能は、ユーザーエクスペリエンスと閲覧効率を向上させるために不可欠です。この記事では、PHPおよびCGIテクノロジーを使用して両方の機能を実現する方法について説明します。
ページネーション関数を実装する原則は、データベースのデータを表示用に複数のページに分割することであり、ユーザーは異なるページ番号をクリックして異なるデータを閲覧できます。まず、データベース内のデータの総量を取得し、ページの総数を計算する必要があります。次に、ユーザーが選択したページ番号によると、対応するデータは表示用のデータベースから取得されます。
PHPを使用してページング機能を実装するサンプルコードは次のとおりです。
// 合計データボリュームとページごとに表示されるデータボリュームを取得します
$sql = "SELECT COUNT(*) as total FROM table_name";
$result = mysqli_query($connection, $sql);
$row = mysqli_fetch_assoc($result);
$total = $row['total'];
$per_page = 10;
// ページの総数を計算します
$total_pages = ceil($total / $per_page);
// ユーザーが選択したページ番号を取得します
$current_page = isset($_GET['page']) ? $_GET['page'] : 1;
// 現在のページのデータ行の開始と終了を計算する
$start = ($current_page - 1) * $per_page;
$end = $start + $per_page;
// データベースから対応するページ番号のデータを取得します
$sql = "SELECT * FROM table_name LIMIT $start, $per_page";
$result = mysqli_query($connection, $sql);
// データを表示します
while ($row = mysqli_fetch_assoc($result)) {
// データを表示します内容
}
// 出力ページングナビゲーション
for ($i = 1; $i <= $total_pages; $i++) {
// 出力ページ番号ナビゲーション
}
ソート機能により、ユーザーはさまざまなフィールドに従って昇順または降順でデータをソートすることができ、ユーザーがデータをより便利に見つけて閲覧できるようになります。ソート関数を実装するには、通常、URLパラメーターまたはフォームの提出を介してユーザー入力を介してSQLクエリステートメントの構築が必要です。ソートフィールドとユーザーが選択したソートメソッドを取得します(上昇または下降順序)。
CGIを使用してソート機能を実装するサンプルコードは次のとおりです。
// ユーザーが選択したソートフィールドとソートタイプを取得します
$sort_field = isset($_GET['sort_field']) ? $_GET['sort_field'] : 'default_field';
$sort_type = isset($_GET['sort_type']) ? $_GET['sort_type'] : 'asc';
// 建てるSQLクエリステートメント
$sql = "SELECT * FROM table_name ORDER BY $sort_field $sort_type";
$result = mysqli_query($connection, $sql);
// データを表示します
while ($row = mysqli_fetch_assoc($result)) {
// データを表示します内容
}
// 出力ソートリンク
echo "フィールドをソートします1昇順";
echo "フィールドをソートします1降順";
echo "フィールドをソートします2昇順";
echo "フィールドをソートします2降順";
PHPとCGIを使用することにより、Webサイトのページネーションおよびソート機能を簡単に実装できます。ページング関数は、ユーザーの閲覧データの効率を向上させることができますが、ソート機能により、ユーザーはニーズに応じてデータを並べ替えることができます。開発プロセス中、開発者はSQL注入などのセキュリティ問題の防止に注意を払う必要があります。同時に、ニーズに応じてさらに最適化し、ユーザーエクスペリエンス全体を改善するためにフィルタリング、検索、その他の機能を追加できます。