Maison développement back-end Problème PHP Comment utiliser PDO pour les opérations de requête de base de données en PHP

Comment utiliser PDO pour les opérations de requête de base de données en PHP

Apr 12, 2023 am 09:19 AM

PHP PDO est une interface qui peut se connecter à plusieurs bases de données différentes. Dans les applications PHP, il peut connecter le code PHP à des systèmes de bases de données tels que MySQL, PostgreSQL, Oracle, etc. Dans cet article, nous expliquerons comment utiliser PDO pour les opérations de requête.

  1. Connectez-vous à la base de données

Avant d'utiliser PDO pour interroger la base de données, vous devez d'abord établir une connexion. Voici un exemple de code pour se connecter à une base de données MySQL :

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

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
?>

Ce code se connectera à la base de données MySQL locale et demandera des informations sur le succès ou l'échec de la connexion. A travers cet exemple, nous pouvons voir que PDO gère les erreurs de connexion via la gestion des exceptions.

  1. Interrogation d'une seule ligne de données

Ensuite, nous présenterons comment utiliser PDO pour interroger une seule ligne de données. Voici un exemple de code pour interroger une seule ligne de données :

<?php
$stmt = $conn->prepare("SELECT * FROM customers WHERE id = :id");
$stmt->bindParam(':id', $id);

$id = 1;
$stmt->execute();

$result = $stmt->fetch(PDO::FETCH_ASSOC);

echo "id: " . $result['id'] . "<br>";
echo "name: " . $result['name'] . "<br>";
echo "email: " . $result['email'] . "<br>";
?>

Ce code interrogera une ligne de données dans la base de données et affichera les résultats. Tout d'abord, nous utilisons la méthode PDO::prepare() pour préparer l'instruction de requête, puis utilisons la méthode bindParam() pour lier les paramètres de requête à l'espace réservé, puis utilisons la méthode execute() pour exécuter la requête, et enfin utilisons le Méthode fetch() pour récupérer les résultats de la requête de retour.

  1. Interroger des données multi-lignes

PDO prend également en charge l'interrogation de données multi-lignes. Voici un exemple de code pour interroger plusieurs lignes de données :

<?php
$stmt = $conn->prepare("SELECT * FROM customers");
$stmt->execute();

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

foreach($result as $row) {
    echo "id: " . $row['id'] . "<br>";
    echo "name: " . $row['name'] . "<br>";
    echo "email: " . $row['email'] . "<br>";
    echo "<hr>";
}
?>

Ce code utilise la méthode fetchAll() pour interroger plusieurs lignes de données dans la base de données et génère chaque ligne de données dans une boucle. La méthode fetchAll() renvoie un tableau à deux dimensions et nous pouvons utiliser foreach pour parcourir chaque ligne de données.

  1. Interroger des données et les afficher dans des pages

Dans les applications Web, nous devons généralement paginer les résultats de la requête. Voici un exemple de code pour interroger des données et les afficher dans des pages :

<?php
$records_per_page = 10;
$page = isset($_GET[&#39;page&#39;]) ? $_GET[&#39;page&#39;] : 1;

$stmt = $conn->prepare("SELECT * FROM customers LIMIT :offset, :records_per_page");
$stmt->bindParam(':offset', ($page - 1) * $records_per_page, PDO::PARAM_INT);
$stmt->bindParam(':records_per_page', $records_per_page, PDO::PARAM_INT);

$stmt->execute();

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

foreach($result as $row) {
    echo "id: " . $row['id'] . "<br>";
    echo "name: " . $row['name'] . "<br>";
    echo "email: " . $row['email'] . "<br>";
    echo "<hr>";
}

$stmt = $conn->prepare("SELECT COUNT(*) FROM customers");
$stmt->execute();

$total_records = $stmt->fetchColumn();
$total_pages = ceil($total_records / $records_per_page);

echo "<div>";
for($i = 1; $i <= $total_pages; $i++) {
    echo "<a href=&#39;?page=$i&#39;>$i</a> ";
}
echo "</div>";
?>

Le code définit d'abord les variables de numéro d'enregistrement et de numéro de page, puis les ajoute à l'instruction de requête. Dans la boucle, nous sortons chaque ligne de données. Ensuite, nous interrogeons le nombre total d'enregistrements et calculons le nombre total de pages. Enfin, nous générons le lien paginé.

Conclusion

Ci-dessus sont quelques exemples d'utilisation de PDO pour interroger la base de données avec PHP. Ces codes peuvent vous aider à utiliser correctement les instructions de requête PDO dans vos applications PHP.

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!

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

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds