Python転職初心者向けエンジニアリングブログ

Pythonに魅了されたあなたへ。エンジニアリングの扉を開く転職初心者向けのブログへようこそ。このブログでは、Pythonの奥深さに迫りながら、エンジニアリングへの転職に役立つ情報を提供しています。未経験者から始めるPythonエンジニアリングの世界への一歩を踏み出すためのガイダンス、ベストプラクティス、そして成功事例など、初心者の方でもわかりやすいコンテンツをお届けします。

SQLとPHPの連携について解説します

LYPプレミアム会員 python

こんにちは、読者の皆さん!今日はSQLとPHPの連携について解説します。PHPは動的Webサイトを構築するための非常に人気のある言語であり、SQLはデータベースと対話するための標準的なクエリ言語です。PHPとSQLの連携により、Webアプリケーションでデータを効率的に扱えるようになります。この記事では、具体的なコードを使いながら、この連携の基本的な部分を初心者向けにわかりやすく説明していきます。

MySQLデータベースの準備

まず、連携の前にMySQLにデータベースを作成しておきましょう。例えば、次のように簡単な「users」テーブルを作成します。

CREATE DATABASE my_database;

USE my_database;

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

このSQLコードは、新しいデータベースを作成し、その中にユーザー情報を保存する「users」テーブルを定義しています。

PHPでデータベースに接続する

次に、PHPでMySQLデータベースに接続します。これには、PHPのmysqli関数を使用します。

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

// データベース接続の作成
$conn = new mysqli($servername, $username, $password, $dbname);

// 接続確認
if ($conn->connect_error) {
    die("接続失敗: " . $conn->connect_error);
}
echo "接続成功";
?>

このコードでは、mysqliを使ってMySQLに接続し、接続が成功したかどうかを確認しています。成功すると「接続成功」というメッセージが表示されます。

データの挿入(INSERT)

次に、PHPを使ってデータベースにデータを挿入してみましょう。新しいユーザーを追加するには、次のようなコードを書きます。

<?php
$name = "John Doe";
$email = "john.doe@example.com";

$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";

if ($conn->query($sql) === TRUE) {
    echo "新しいレコードが作成されました";
} else {
    echo "エラー: " . $sql . "<br>" . $conn->error;
}

$conn->close();
?>

このコードは、usersテーブルに新しいユーザーを追加するためのSQLクエリを実行しています。実行が成功すると、「新しいレコードが作成されました」というメッセージが表示されます。

データの取得(SELECT)

挿入したデータを取得して表示するためには、次のコードを使用します。

<?php
$sql = "SELECT id, name, email, created_at FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // データを出力
    while($row = $result->fetch_assoc()) {
        echo "ID: " . $row["id"]. " - 名前: " . $row["name"]. " - メール: " . $row["email"]. " - 登録日時: " . $row["created_at"]. "<br>";
    }
} else {
    echo "0 レコード";
}

$conn->close();
?>

このPHPコードは、usersテーブルからデータを取得し、ブラウザに出力します。fetch_assoc()を使用して各レコードを配列形式で取得し、ループで繰り返し表示しています。

実行結果

ID: 1 - 名前: John Doe - メール: john.doe@example.com - 登録日時: 2024-10-11 12:00:00

SQLとPHPの連携のポイント

  1. データベース接続の確立: PHPではmysqliPDOを使ってMySQLに接続できます。接続が成功するかどうかを必ず確認するようにしましょう。

  2. データの操作: INSERTSELECTUPDATEDELETEといった基本的なSQLクエリをPHPから実行することができます。ユーザーからの入力を安全に扱うために、プレースホルダーやプリペアドステートメントを使ってSQLインジェクションを防ぎましょう。

  3. エラーハンドリング: クエリの実行が失敗した場合に備えて、適切なエラーメッセージを表示し、トラブルシューティングをしやすくすることが重要です。

まとめ

PHPとSQLを連携させることで、Webアプリケーションで効率的にデータを管理・操作することができます。本記事で紹介した基礎的な操作を理解すれば、データベースとの連携もスムーズに行えるようになるでしょう。今後は、フォームからのユーザー入力や安全なデータ処理に関する内容も追加して、さらに実践的なアプリケーションを構築していきましょう。

この記事が皆さんの開発に役立つことを願っています。