Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Wujudkan sambungan pangkalan data PHP berorientasikan objek menggunakan PDO

Wujudkan sambungan pangkalan data PHP berorientasikan objek menggunakan PDO

WBOY
WBOYasal
2024-06-05 13:49:55295semak imbas

Gunakan Objek Data PHP (PDO) untuk mewujudkan sambungan pangkalan data PHP berorientasikan objek, menyediakan antara muka bersatu untuk berinteraksi dengan pelbagai pangkalan data. Penubuhan sambungan PDO memerlukan nama sumber data (DSN), nama pengguna dan kata laluan. Gunakan kaedah query() untuk melaksanakan pertanyaan SQL dan kaedah fetchAll() untuk mendapatkan hasil. Contoh praktikal menunjukkan cara menyambungkan borang PHP ke pangkalan data MySQL dan memasukkan data.

Wujudkan sambungan pangkalan data PHP berorientasikan objek menggunakan PDO

Gunakan PDO untuk mewujudkan sambungan pangkalan data PHP berorientasikan objek

Sambungan pangkalan data PHP berorientasikan objek menggunakan perpustakaan kelas PHP Data Objects (PDO), yang menyediakan antara muka bersatu untuk berinteraksi dengan pelbagai pangkalan data. Menggunakan PDO, anda mengakses pangkalan data dalam cara berorientasikan objek, yang menjadikan kod lebih mudah untuk disusun dan diselenggara.

Mewujudkan sambungan PDO

Untuk mewujudkan sambungan PDO, anda perlu menggunakan pembina PDO. Pembina ini menerima parameter berikut: PDO 构造函数。此构造函数接受以下参数:

  • 数据源名称 (DSN):指定数据库服务器、数据库名称和其他特定于数据库的连接信息。DSN 的格式因数据库类型而异。
  • 用户名:连接到数据库的用户名。
  • 密码:连接到数据库的密码。
$dsn = 'mysql:host=localhost;dbname=my_database';
$username = 'root';
$password = '';

try {
  $pdo = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
  echo 'Connection failed: ' . $e->getMessage();
  die();
}

执行查询

可以使用 query() 方法执行 SQL 查询。此方法返回一个 PDOStatement 对象,该对象表示查询结果。

$sql = 'SELECT * FROM users WHERE name LIKE ?';
$stmt = $pdo->prepare($sql);
$stmt->execute(['%joh%']);

获取结果

可以通过 fetchAll()

  • Nama Sumber Data (DSN)

    : Menentukan pelayan pangkalan data, nama pangkalan data dan maklumat sambungan khusus pangkalan data lain. Format DSN berbeza-beza bergantung pada jenis pangkalan data.

  • Nama pengguna: Nama pengguna untuk menyambung ke pangkalan data.
  • Kata Laluan

    : Kata laluan untuk menyambung ke pangkalan data.

$users = $stmt->fetchAll(PDO::FETCH_ASSOC);

Laksanakan pertanyaan

🎜🎜Anda boleh menggunakan kaedah query() untuk melaksanakan pertanyaan SQL. Kaedah ini mengembalikan objek PDOStatement yang mewakili hasil pertanyaan. 🎜
<!-- form.php -->
<form action="submit.php" method="post">
  <label for="name">姓名:</label>
  <input type="text" id="name" name="name">
  <input type="submit" value="提交">
</form>
🎜🎜Dapatkan keputusan🎜🎜🎜 Anda boleh mendapatkan hasil pertanyaan melalui kaedah fetchAll(). Kaedah ini mengembalikan tatasusunan hasil di mana setiap elemen ialah tatasusunan bersekutu. 🎜
// submit.php
$dsn = 'mysql:host=localhost;dbname=my_database';
$username = 'root';
$password = '';

try {
  $pdo = new PDO($dsn, $username, $password);
} catch (PDOException $e) {
  echo 'Connection failed: ' . $e->getMessage();
  die();
}

$name = $_POST['name'];
$sql = 'INSERT INTO users (name) VALUES (?)';
$stmt = $pdo->prepare($sql);
$stmt->execute([$name]);

header('Location: success.php');
🎜🎜Contoh Praktikal🎜🎜🎜Pertimbangkan borang PHP asas di mana pengguna boleh memasukkan nama mereka dan memasukkannya ke dalam pangkalan data. Kami menggunakan PDO untuk menyambungkan borang ini kepada pangkalan data MySQL. 🎜
<!-- success.php -->
<h1>成功!</h1>
<p>您的姓名已添加到数据库中。</p>
rrreeerrreee🎜Contoh ini menunjukkan cara menggunakan PDO untuk menyambungkan borang PHP ke pangkalan data MySQL dan memasukkan data. 🎜

Atas ialah kandungan terperinci Wujudkan sambungan pangkalan data PHP berorientasikan objek menggunakan PDO. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn