Maison > développement back-end > Problème PHP > [Exemple de partage] Base de données d'opération PHP PDO (ajouter, supprimer, modifier et vérifier)

[Exemple de partage] Base de données d'opération PHP PDO (ajouter, supprimer, modifier et vérifier)

PHPz
Libérer: 2023-03-27 15:56:12
original
779 Les gens l'ont consulté

PHP PDO est une extension de PHP. Il fournit aux développeurs PHP un moyen standardisé d'exploiter les bases de données, permettant aux développeurs de basculer de manière transparente entre différentes bases de données. Cet article montrera comment utiliser PHP PDO pour se connecter à une base de données MySQL et rédigera un exemple d'ajout, de suppression, de modification et de vérification de code.

Installez l'extension PDO

Avant de commencer, assurez-vous que l'extension PDO est installée dans votre environnement PHP. Vous pouvez vérifier si PDO est déjà installé dans votre environnement actuel en exécutant la commande suivante dans le terminal.

php -m | grep pdo
Copier après la connexion

Si aucun message d'erreur n'est affiché, cela signifie que PDO a été installé avec succès. Si l'invite ne trouve pas l'extension PDO, veuillez installer la version correspondante de PDO en fonction de votre système d'exploitation et de la version de PHP.

Connectez-vous à la base de données MySQL

Avant la démonstration, nous devons d'abord créer une base de données MySQL localement et créer une nouvelle table de données nommée test. En même temps, pour nous connecter à la base de données, nous devons préparer les informations nécessaires à la connexion, telles que le nom de la base de données, le nom d'utilisateur, le mot de passe, etc. Le code de connexion est le suivant :

$dbname = 'test';
$username = 'root';
$password = '';
$dsn = "mysql:host=localhost;dbname=$dbname;charset=utf8";

try {
  $pdo = new PDO($dsn, $username, $password);
  echo "连接成功";
} catch(PDOException $e) {
  echo $e->getMessage();
}
Copier après la connexion

Description :

  • dbname est le nom de la base de données, qui peut être modifié en fonction de la situation réelle ; code>password sont Le nom d'utilisateur et le mot de passe pour accéder à la base de données doivent être modifiés en fonction de la situation réelle dbname 是数据库名称,可以根据实际情况修改;
  • usernamepassword 是访问数据库的用户名和密码,根据实际情况进行修改;
  • dsn 是 PDO 连接 MySQL 数据库所必需的参数,其中 mysql:host=localhost 是 MySQL 的主机名,dbname=$dbname 是数据库名称,charset=utf8 是字符集,确保我们的数据在传输过程中不会出现乱码的情况。

如果连接成功,页面将会输出“连接成功”。

获取数据

接下来,我们将演示如何使用 PDO 获取数据库中的数据。代码如下:

$sql = "SELECT * FROM test";
$stmt = $pdo->query($sql);

while ($row = $stmt->fetch()) {
  echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . "<br>";
}
Copier après la connexion

说明:

  • SELECT * FROM test 是SQL语句,其中test是我们创建的数据表名;
  • $stmt 是 PDO 执行 SQL 语句后返回的结果集对象;
  • $stmt->fetch() 用于获取结果集中的一条数据,每次执行完该方法后,$stmt 中将指向下一条数据;
  • while 循环用于遍历所有符合条件的数据记录,直到结果集中没有数据为止。

添加数据

接下来,我们将演示如何使用 PDO 向数据库中添加数据。代码如下:

$name = 'Tom';
$age = 28;
$sql = "INSERT INTO test(name,age) VALUES(:name,:age)";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':name', $name);
$stmt->bindValue(':age', $age);
$result = $stmt->execute();

if ($result) {
  echo "数据插入成功";
} else {
  echo "数据插入失败";
}
Copier après la connexion

说明:

  • INSERT INTO 是 SQL 语句,用于向数据表中插入新的数据;
  • :name:age 是 PDO 参数绑定的占位符,将在后面的代码中被替换成真正的值;
  • $pdo->prepare($sql) 用于为 SQL 语句预处理,这里的 $sql 就是要执行的 SQL 语句;
  • $stmt->bindValue(':name', $name) 将占位符 :name 绑定到具体的值 $name
  • $result = $stmt->execute() 执行 SQL 语句,并将执行结果返回。

更新数据

接下来,我们将演示如何使用 PDO 更新数据库中的数据。代码如下:

$id = 1;
$name = 'John';
$age = 30;
$sql = "UPDATE test SET name=:name,age=:age WHERE id=:id";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':name', $name);
$stmt->bindValue(':age', $age);
$stmt->bindValue(':id', $id);
$result = $stmt->execute();

if ($result) {
  echo "数据更新成功";
} else {
  echo "数据更新失败";
}
Copier après la connexion

说明:

  • UPDATE 是 SQL 语句,用于更新数据表中的数据;
  • SET name=:name,age=:age 表示要更新的字段和对应的值;
  • WHERE id=:id 表示要更新的数据的条件;
  • $stmt->bindValue(':id', $id) 将占位符 :id 绑定到具体的值 $id

删除数据

最后,我们将演示如何使用 PDO 删除数据库中的数据。代码如下:

$id = 1;
$sql = "DELETE FROM test WHERE id=:id";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':id', $id);
$result = $stmt->execute();

if ($result) {
  echo "数据删除成功";
} else {
  echo "数据删除失败";
}
Copier après la connexion

说明:

  • DELETE FROM 是 SQL 语句,用于从数据表中删除数据;
  • WHERE id=:id 表示要删除的数据的条件;
  • $stmt->bindValue(':id', $id) 将占位符 :id 绑定到具体的值 $id
  • dsn est un paramètre nécessaire pour que PDO se connecte à la base de données MySQL ; mysql:host=localhost est l'hôte du nom MySQL, dbname=$dbname est le nom de la base de données et charset=utf8 est le jeu de caractères pour garantir que nos données ne seront pas altérées pendant la transmission.

Si la connexion est réussie, la page affichera "Connexion réussie".

Obtention de données

🎜🎜Ensuite, nous montrerons comment utiliser PDO pour obtenir des données de la base de données. Le code est le suivant : 🎜rrreee🎜Explication : 🎜🎜🎜SELECT * FROM test est une instruction SQL, où test est le nom de la table de données que nous avons créée 🎜🎜$stmt est une exécution PDO L'objet d'ensemble de résultats renvoyé après l'instruction SQL ; 🎜🎜$stmt->fetch() est utilisé pour obtenir une donnée dans l'ensemble de résultats. cette méthode, $stmt code> pointera vers la donnée suivante ; 🎜🎜La boucle while est utilisée pour parcourir tous les enregistrements de données qui remplissent les conditions jusqu'à ce qu'il n'y ait plus de données. dans l'ensemble de résultats. 🎜🎜🎜🎜Ajouter des données🎜🎜🎜Ensuite, nous montrerons comment utiliser PDO pour ajouter des données à la base de données. Le code est le suivant : 🎜rrreee🎜Explication : 🎜🎜🎜INSERT INTO est une instruction SQL utilisée pour insérer de nouvelles données dans la table de données ; 🎜🎜:name et :age est l'espace réservé pour la liaison des paramètres PDO, qui sera remplacé par la valeur réelle dans le code suivant 🎜🎜$pdo->prepare($sql) est utilisé ; Prétraitement des instructions SQL, ici $sql est l'instruction SQL à exécuter 🎜🎜$stmt->bindValue(':name', $name) occupera Le le caractère binaire :name est lié à la valeur spécifique $name ; 🎜🎜$result = $stmt->execute() exécute le SQL ; instruction et renvoie les résultats de l’exécution. 🎜🎜🎜🎜Mise à jour des données🎜🎜🎜Ensuite, nous montrerons comment utiliser PDO pour mettre à jour les données dans la base de données. Le code est le suivant : 🎜rrreee🎜Explication : 🎜🎜🎜UPDATE est une instruction SQL utilisée pour mettre à jour les données dans la table de données 🎜🎜SET name=:name,age=:age ; représente le champ à mettre à jour et la valeur correspondante ; 🎜🎜WHERE id=:id représente la condition des données à mettre à jour ; 🎜🎜$stmt->bindValue ; (':id', $id) Lie l'espace réservé :id à la valeur spécifique $id. 🎜🎜🎜🎜Suppression de données🎜🎜🎜Enfin, nous montrerons comment supprimer des données dans la base de données à l'aide de PDO. Le code est le suivant : 🎜rrreee🎜Explication : 🎜🎜🎜DELETE FROM est une instruction SQL utilisée pour supprimer des données de la table de données ; 🎜🎜WHERE id=:id ; signifie supprimer les conditions pour les données 🎜🎜$stmt->bindValue(':id', $id) Lier l'espace réservé :id à une valeur spécifique $ identifiant. 🎜🎜🎜🎜Résumé🎜🎜🎜Ce qui précède est un exemple d'utilisation de PHP PDO pour ajouter, supprimer, modifier et interroger la base de données MySQL. Je pense qu'à travers ces exemples, tout le monde maîtrise la méthode d'utilisation de PDO pour se connecter à la base de données et effectuer les opérations associées sur les données. Dans les projets réels, vous pouvez également combiner d’autres frameworks et composants PHP pour développer rapidement une logique métier complexe. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal