PHP は、Web 開発で一般的に使用されるバックエンド言語です。ユーザーがデータを表示して使用できるように、データベースからデータをクエリし、それをフロントエンド ページに転送する必要がある場合があります。この記事では、より複雑な Web アプリケーションを開発できるように、PHP でデータベースにクエリを実行し、データをフロントエンドに転送する方法を紹介します。
1. データベースへの接続
PHP を使用してデータベースにクエリを実行する前に、まずデータベースとの接続を確立する必要があります。 PHP を使用したデータベースへの接続は、PHP の mysqli および PDO 拡張機能を通じて実現できます。具体的な手順は次のとおりです。
$servername = "localhost"; // 数据库主机名 $username = "username"; // 数据库用户名 $password = "password"; // 数据库密码 $dbname = "myDB"; // 数据库名 // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检查连接是否成功 if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
$servername = "localhost"; // 数据库主机名 $username = "username"; // 数据库用户名 $password = "password"; // 数据库密码 $dbname = "myDB"; // 数据库名 // 创建连接 try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // 设置 PDO 错误模式为异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Connected successfully"; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); }
2. データのクエリ
データベースに正常に接続したら、データをクエリできます。 PHP を使用したデータベースのクエリは、mysqli および PDO 拡張機能を通じて実現できます。具体的な手順は次のとおりです。
$sql = "SELECT id, name, email FROM users"; $result = mysqli_query($conn, $sql); if (mysqli_num_rows($result) > 0) { // 输出数据 while($row = mysqli_fetch_assoc($result)) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>"; } } else { echo "0 results"; }
$sql = "SELECT id, name, email FROM users"; $result = $conn->query($sql); if ($result->rowCount() > 0) { // 输出数据 while($row = $result->fetch()) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>"; } } else { echo "0 results"; }
上記のコード ID、名前、電子メール フィールドの値は、「users」という名前のデータベース テーブルからクエリされます。データがクエリされると、データはフロントエンドに出力されます。データが見つからない場合は「0件」が出力されます。
3. フロントエンドにデータを送信する
データをクエリした後、フロントエンド ページにデータを送信する必要があります。 PHP では、JSON 形式でデータをフロントエンドに渡すことができます。具体的な手順は次のとおりです。
$sql = "SELECT id, name, email FROM users"; $result = mysqli_query($conn, $sql); $data = array(); if(mysqli_num_rows($result) > 0) { while($row = mysqli_fetch_assoc($result)) { $data[] = $row; } } $json = json_encode($data);
AJAX テクノロジを使用すると、サーバー側のデータをフロントエンドに非同期で送信できるため、フロントエンド ページでより迅速にデータを表示できるようになります。
<script> var xmlhttp = new XMLHttpRequest(); var url = "getdata.php"; xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var data = JSON.parse(this.responseText); // 将数据渲染至前端页面 // ... } }; xmlhttp.open("GET", url, true); xmlhttp.send(); </script>
上記のコードは、「getdata.php」という名前のファイルから JSON 形式でデータを取得し、そのデータをフロントエンド ページにレンダリングします。
結論
この記事の導入部を通じて、PHP でデータベースに接続し、データをクエリし、フロントエンド ページにデータを転送する方法を学習しました。同時に、JSON を使用してデータを転送する一般的な方法も紹介しました。これらのテクニックを使用して、より複雑な Web アプリケーションを開発できるようになりました。
以上がPHPクエリデータをフロントエンドに送信する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。