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

PHPz
Libérer: 2023-04-12 10:53:34
original
1149 Les gens l'ont consulté

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();
}
?>
Copier après la connexion

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>";
?>
Copier après la connexion

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>";
}
?>
Copier après la connexion

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>";
?>
Copier après la connexion

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!

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