インターネット技術の継続的な進歩により、データベースは Web アプリケーションに不可欠な部分になりました。したがって、PHP を使用してデータベースを操作する方法を学ぶことは、すべての Web 開発者が習得する必要があるスキルの 1 つです。この記事では、PHP を使用してデータベースを操作するための基礎知識と実践的なヒントを紹介します。
まず、PHP が提供する関数を使用してデータベースに接続する必要があります。一般的に使用される接続関数には、mysqli_connect()
および PDO
があります。次に、例として mysqli_connect()
を取り上げます。
$conn = mysqli_connect("localhost", "username", "password", "database_name");
この関数は 4 つのパラメータを受け入れます: localhost
(データベース サーバーのアドレス)、username
(データベースに接続するユーザー名)、password
(データベースに接続するパスワード)、および database_name
(接続するデータベースの名前)。接続が成功すると、関数はデータベース内のデータのクエリと変更に使用できる接続オブジェクトを返します。
PHP を使用してデータベースを操作する最も一般的な操作には、追加、削除、変更、クエリなどが含まれます。これらの操作を個別に実装するメソッド。
データの追加
データベースにデータを追加するには、SQL ステートメント INSERT INTO
を使用します。例:
$sql = "INSERT INTO users (name, email, age) VALUES ('John Doe', 'john@example.com', 30)"; if (mysqli_query($conn, $sql)) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . mysqli_error($conn); }
この SQL ステートメントは、users
という名前のデータ テーブルにレコードを追加します。操作が成功すると、プログラムは 新しいレコードが正常に作成されました
を出力します。操作が失敗した場合、設定された error reports
に従ってエラー メッセージが出力されます。
データの削除
SQL ステートメント DELETE FROM
を使用して、1 つ以上のレコードを削除できます。例:
$sql = "DELETE FROM users WHERE id=1"; if (mysqli_query($conn, $sql)) { echo "Record deleted successfully"; } else { echo "Error deleting record: " . mysqli_error($conn); }
この SQL ステートメントは、users
という名前のデータ テーブル内の ID 1 のレコードを削除します。削除が成功すると、プログラムは「レコードは正常に削除されました
」と出力します。操作が失敗した場合、設定された error reports
に従ってエラー メッセージが出力されます。
データの変更
データベース内のデータを変更するには、SQL ステートメント UPDATE
を使用できます。例:
$sql = "UPDATE users SET age=31 WHERE id=2"; if (mysqli_query($conn, $sql)) { echo "Record updated successfully"; } else { echo "Error updating record: " . mysqli_error($conn); }
この SQL ステートメントは、users
という名前のデータ テーブル内の ID 2 のレコードの age
値を 31 に更新します。操作が成功すると、プログラムは レコードが正常に更新されました
を出力します。操作が失敗した場合、設定された error reports
に従ってエラー メッセージが出力されます。
データのクエリ
クエリ操作は、最も一般的に使用される操作の 1 つです。 SQL ステートメント SELECT
を使用して、データベース内のデータをクエリできます。例:
$sql = "SELECT * 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"]. " - Age: " . $row["age"]. "<br>"; } } else { echo "0 results"; }
このプログラムは、users
という名前のデータ テーブルからすべてのデータを取得し、結果を特定の形式で出力します。クエリ結果が空の場合、プログラムは 0 結果
を出力します。
準備されたステートメントを使用すると、データベースをより安全に操作できます。プリペアド ステートメントでは、変数の代わりにプレースホルダーを使用することで SQL インジェクション攻撃を防ぐことができます。次に、準備されたステートメントの使用例を示します。
$stmt = $conn->prepare("INSERT INTO users (name, email, age) VALUES (?, ?, ?)"); $stmt->bind_param("sss", $name, $email, $age); $name = "John Doe"; $email = "john@example.com"; $age = 30; $stmt->execute(); echo "New records created successfully";
この例では、prepare()
関数を使用して準備されたステートメントを定義します。 ?
はプレースホルダーを表し、準備されたステートメント内のプレースホルダーと変数は、bind_param()
関数を通じてバインドできます。最後に、execute()
関数を使用して、準備されたステートメントを実行します。
データベース操作が完了したら、データベース接続を明示的に閉じてサーバー リソースを解放する必要があります。 mysqli_close()
関数を使用してデータベース接続を閉じます。
mysqli_close($conn);
この記事の導入を通じて、PHP を使用してデータベースを操作する方法を学びました。これらの基礎知識と実践的なスキルを通じて、Web 開発におけるデータベース操作をより効率的に完了できます。もちろん、データベースの使い方を詳しく学びたい場合は、より関連する資料を読み、実践での経験を積む必要があります。
以上がPHPを使ってデータベースを操作するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。