Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| info:bdd:sqlphp [2021/08/11 12:05] – [2.3 Traitement du résultat de la requête] phil | info:bdd:sqlphp [2025/06/19 19:29] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | [[info: | + | [[info: |
| ===== BDD - MySQL et PHP ===== | ===== BDD - MySQL et PHP ===== | ||
| - | [Mise à jour le 10/8/2021] | + | [Mise à jour le 28/8/2024] |
| ** Sources ** | ** Sources ** | ||
| Ligne 27: | Ligne 27: | ||
| {{ : | {{ : | ||
| - | <note tip>On utilise le SGBD MySQL pour les exemples de la base //test//. La table jeux_video peut être téléchargé [[https:// | + | <callout type="tip" title=" |
| ==== 2. Accès à une base de données MySQL avec PHP ==== | ==== 2. Accès à une base de données MySQL avec PHP ==== | ||
| Ligne 39: | Ligne 39: | ||
| {{ : | {{ : | ||
| - | <note>La connexion à la base se fait **une seule fois** en créant un **objet** de la classe PDO.</note> | + | <callout type=" |
| * //Syntaxe// \\ nomConnect = **new PDO**(' | * //Syntaxe// \\ nomConnect = **new PDO**(' | ||
| - | <note> | + | <callout type=" |
| * //Exemple 1 // : Connexion à la base //test// avec le login //root//, sans mot de passe et sans la gestion des erreurs | * //Exemple 1 // : Connexion à la base //test// avec le login //root//, sans mot de passe et sans la gestion des erreurs | ||
| Ligne 64: | Ligne 64: | ||
| === 2.2 Envoi d'une requête === | === 2.2 Envoi d'une requête === | ||
| - | <note> | + | |
| + | <callout type=" | ||
| **Cas 1** - Si la requête **ne retourne pas de résultat** (INSERT, UPDATE, DELETE, etc.), on utilise la méthode //exec()//. | **Cas 1** - Si la requête **ne retourne pas de résultat** (INSERT, UPDATE, DELETE, etc.), on utilise la méthode //exec()//. | ||
| Ligne 70: | Ligne 71: | ||
| * //Syntaxe// \\ //integer// nomConnect **->** exec(// | * //Syntaxe// \\ //integer// nomConnect **->** exec(// | ||
| - | <note> | + | <callout type=" |
| * //Exemple// : modification du possesseur de la console NES identifiée par ID=1 (Initialement Florent) | * //Exemple// : modification du possesseur de la console NES identifiée par ID=1 (Initialement Florent) | ||
| Ligne 83: | Ligne 84: | ||
| * //Syntaxe// \\ //object// nomConnect **->** query(// | * //Syntaxe// \\ //object// nomConnect **->** query(// | ||
| - | <note> | + | <callout type=" |
| * //Exemple// : //reponse// reçoit le résultat de la requête | * //Exemple// : //reponse// reçoit le résultat de la requête | ||
| Ligne 97: | Ligne 98: | ||
| === 2.3 Traitement du résultat de la requête === | === 2.3 Traitement du résultat de la requête === | ||
| * **Insertion, | * **Insertion, | ||
| - | <note>Pour les opérations d' | + | |
| + | <callout type=" | ||
| <code php *.php> | <code php *.php> | ||
| Ligne 106: | Ligne 108: | ||
| \\ | \\ | ||
| * **Résultat d'une commande SELECT** | * **Résultat d'une commande SELECT** | ||
| - | <note> | + | Pour les opérations d' |
| + | <callout type=" | ||
| * //Syntaxe// \\ //array// nomResultat **->** fetch(// | * //Syntaxe// \\ //array// nomResultat **->** fetch(// | ||
| * pouvant être indicé si type = PDO:: | * pouvant être indicé si type = PDO:: | ||
| * dont les clés sont les noms des colonnes de la table interrogée si type = PDO:: | * dont les clés sont les noms des colonnes de la table interrogée si type = PDO:: | ||
| - | * dont les clés sont mixtes si type = PDO:: | + | * dont les clés sont mixtes si type = PDO:: |
| - | + | \\ Pour lire toutes les lignes du résultat, il faut créer une boucle while qui lit chaque ligne. | |
| - | Pour lire toutes les lignes du résultat, il faut créer une boucle while qui lit chaque ligne. | + | |
| * //Exemple// | * //Exemple// | ||
| <code php *.php> | <code php *.php> | ||
| Ligne 121: | Ligne 122: | ||
| } | } | ||
| </ | </ | ||
| - | + | | |
| - | | + | * Super Mario Bros - Laurent - 4 |
| - | * Super Mario Bros - Laurent - 4 | + | * The Rocketeer - Michel - 2 |
| - | * The Rocketeer - Michel - 2 | + | * Ice Hockey - Michel - 7 |
| - | * Ice Hockey - Michel - 7 | + | |
| === 2.4 Fermeture de la connexion === | === 2.4 Fermeture de la connexion === | ||
| - | <note>Pour clore la connexion, il suffit de détruire l' | + | <callout type=" |
| * //Exemple// | * //Exemple// | ||