ホームページ > バックエンド開発 > PHPの問題 > PHPでページングと削除機能を実装する方法

PHPでページングと削除機能を実装する方法

PHPz
リリース: 2023-04-19 11:23:26
オリジナル
651 人が閲覧しました

インターネットの急速な発展に伴い、Web 開発テクノロジーはますます成熟してきています。最も広く支持されている開発言語の 1 つである PHP は、複雑なアプリケーションの構築に使用できる強力な言語に進化しました。 Web アプリケーションを構築する場合、ページネーションと削除機能の実装は、ユーザー エクスペリエンスを大幅に向上させ、Web サイトとのユーザー操作を簡素化できるため、非常に重要です。この記事では、PHPを使用してページングと削除機能を実装する方法を紹介します。

  1. ページング関数の実装

大量のデータを表示する必要がある場合、すべてのデータを同じページに表示するとページが非常に遅くなり、場合によってはブラウジング サーバーがクラッシュします。この問題に対処するために、ページング機能を実装できます。

ページングの基本的な考え方は、データを複数の異なるページに分割して表示することです。一般に、データのタイトル、写真、価格など、データに関する概要情報をページに表示する必要があります。さらに、ユーザーがより多くのデータを探索できるようにするために、いくつかのページ リンクを提供する必要があります。

PHP では、MySQL またはその他のデータベース システムを使用してデータを管理できます。ページングを実装するには、次の情報を知る必要があります:

  • 現在表示されるページ番号
  • 各ページに含めるデータの数
  • データベースには合計何個のデータがありますか? 記事データ

ここでは、データベース システムとして MySQL を使用します。製品に関する情報を含む「product」というテーブルがあると仮定します。次の PHP コードを使用してページに表示します。

<?php
  $page_num = isset($_GET[&#39;page&#39;]) ? $_GET[&#39;page&#39;] : 1;
  $rows_per_page = 10;

  // connect to MySQL database
  $conn = mysqli_connect(&#39;localhost&#39;, &#39;username&#39;, &#39;password&#39;, &#39;database&#39;);
  if (!$conn) {
    die(&#39;Failed to connect to database: &#39; . mysqli_connect_error());
  }

  // get total number of rows
  $result = mysqli_query($conn, &#39;SELECT COUNT(*) as count FROM products&#39;);
  $row = mysqli_fetch_assoc($result);
  $total_rows = $row[&#39;count&#39;];

  // calculate the number of pages
  $total_pages = ceil($total_rows / $rows_per_page);

  // calculate the starting row index
  $start = ($page_num - 1) * $rows_per_page;

  // retrieve the data
  $sql = "SELECT * FROM products LIMIT $start, $rows_per_page";
  $result = mysqli_query($conn, $sql);

  // display the data
  while ($row = mysqli_fetch_assoc($result)) {
    echo $row[&#39;product_name&#39;] . &#39; - &#39; . $row[&#39;product_price&#39;] . &#39;<br>';
  }

  // display the pagination links
  for ($i = 1; $i <= $total_pages; $i++) {
    if ($i == $page_num) {
      echo &#39;<b>' . $i . '</b> ';
    } else {
      echo '<a href="?page=&#39; . $i . &#39;">' . $i . '</a> ';
    }
  }

  // close the connection
  mysqli_close($conn);
?>
ログイン後にコピー

このコード スニペットでは、まず現在のページ番号とページごとに表示される行数を取得します。次に、MySQL データベースに接続し、「COUNT」関数を使用してテーブル内の行数を取得します。次に、合計ページ数を計算し、取得する開始データ行のインデックスを計算します。最後に、データベースからデータを取得して表示します。ページ分割されたリンクを表示するには、「for」ループの後に特定のページへのリンクを含む「else」ステートメントを使用します。

  1. 削除関数の実装

Web アプリケーションでは、削除関数は非常に一般的です。たとえば、削除ボタンをクリックすると、データベース内の行を削除できます。削除操作を実装するには、いくつかの点に注意する必要があります。

まず、削除する行の ID を決定する必要があります。ここでは、HTML コードを使用してテーブルを生成し、各行の末尾に削除ボタンを配置できます。このボタンをクリックすると、対応する行 ID を PHP スクリプトに渡すことができます。

2 番目に、削除リクエストを処理するための PHP スクリプトを作成する必要があります。この記事では、データ ストレージ システムとして MySQL データベースを使用します。製品に関する情報を含む「product」というテーブルがあると仮定します。次の PHP コードを使用して製品を削除します。

<?php
  // connect to MySQL database
  $conn = mysqli_connect(&#39;localhost&#39;, &#39;username&#39;, &#39;password&#39;, &#39;database&#39;);
  if (!$conn) {
    die(&#39;Failed to connect to database: &#39; . mysqli_connect_error());
  }

  // get the product id to delete
  $product_id = $_GET[&#39;product_id&#39;];

  // delete the product
  $sql = "DELETE FROM products WHERE id = $product_id";
  mysqli_query($conn, $sql);

  // close the connection
  mysqli_close($conn);

  // redirect to the product list page
  header(&#39;Location: products.php&#39;);
?>
ログイン後にコピー

ここでは、まず MySQL データベースに接続し、削除する製品の ID を取得します。次に、「DELETE」ステートメントを使用して、データベースから対応する行を削除します。最後に、データベース接続を閉じ、ページを製品リスト ページにリダイレクトします。

  1. 概要

この記事では、PHP を使用してページング機能と削除機能を実装する方法を紹介しました。ページングを実装するには、現在表示されているページ番号、各ページに含まれるデータの数、データベース内に合計でデータの数がいくつあるかを知る必要があります。削除関数を実装するには、削除する行の ID を取得し、PHP スクリプトで「DELETE」ステートメントを使用してデータベースから行を削除する必要があります。これら 2 つの機能を使用することで、Web アプリケーションのユーザー エクスペリエンスを大幅に向上させることができます。

以上がPHPでページングと削除機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート