info:bdd:sqlphp

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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:10] – [2.3 Traitement du résultat de la requête] philinfo:bdd:sqlphp [2024/08/28 17:17] (Version actuelle) – [2.4 Fermeture de la connexion] phil
Ligne 1: Ligne 1:
-[[info:bdd:accueilbdd|{{ :iconemaison.jpg?nolink&30|Sommaire Bdd}}]]+[[info:bdd:accueilbdd|{{ :iconemaison.jpg?nolink&25|Sommaire Bdd}}]]
  
 ===== 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:
 {{ :web:extable.png?nolink |}} {{ :web:extable.png?nolink |}}
  
-<note tip>On utilise le SGBD MySQL pour les exemples de la base //test//. La table jeux_video peut être téléchargé [[https://webge.fr/doc/wikis/code/web/WEB_TABLE_MSQL_jeux_video.zip|ici]].</note>+<callout type="tip" title="jeux_video" icon="true">On utilise le SGBD MySQL pour les exemples de la base //test//. La table jeux_video peut être téléchargé [[https://webge.fr/doc/wikis/code/web/WEB_TABLE_MSQL_jeux_video.zip|ici]].</callout>
  
 ==== 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:
 {{ :web:cobjetbdd.png?nolink&100|}} {{ :web:cobjetbdd.png?nolink&100|}}
  
-<note>La connexion à la base se fait **une seule fois** en créant un **objet** de la classe PDO.</note>+<callout type="primary" title="Connexion" icon="true">La connexion à la base se fait **une seule fois** en créant un **objet** de la classe PDO.</callout>
  
   * //Syntaxe// \\ nomConnect = **new PDO**('mysql:host=**$host** dbname=**$base**',user,pass); \\   * //Syntaxe// \\ nomConnect = **new PDO**('mysql:host=**$host** dbname=**$base**',user,pass); \\
  
-<note>L'objet //$<nomConnect>// représente la connexion au serveur. Il est utilisé pour toutes les opérations à effectuer sur la base.</note>+<callout type="default" title="Objet PDO" icon="true">L'objet //$<nomConnect>// représente la connexion au serveur. Il est utilisé pour toutes les opérations à effectuer sur la base.</callout>
  
   * //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>L'information liée au bon fonctionnement de la requête ou son résultat sont placés dans une variable pour être traités.</note>+ 
 +<callout type="default" title="Variable" icon="true">L'information liée au bon fonctionnement de la requête ou son résultat sont placés dans une variable pour être traités.</callout>
  
 **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(//string// requete) \\ nomvar = nomConnect **->** exec(//string// requete)   * //Syntaxe// \\ //integer// nomConnect **->** exec(//string// requete) \\ nomvar = nomConnect **->** exec(//string// requete)
  
-<note>**exec()** retourne un entier contenant le nombre de lignes concernées par la requête.</note>+<callout type="primary" title="Requête" icon="true">**exec()** retourne un entier contenant le nombre de lignes concernées par la requête.</callout>
  
   * //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(//string// requete) \\ nomResultat = nomConnect **->** query(//string// requete)    * //Syntaxe// \\ //object// nomConnect **->** query(//string// requete) \\ nomResultat = nomConnect **->** query(//string// requete) 
  
-<note>Retourne FALSE en cas d'erreur ou un objet représentant l'ensemble des lignes de résultat.</note>+<callout type="default" title="Erreur" icon="true">Retourne FALSE en cas d'erreur ou un objet représentant l'ensemble des lignes de résultat.</callout>
  
   * //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, suppression, mise à jour**   * **Insertion, suppression, mise à jour**
-<note>Pour les opérations d'insertion, de suppression ou de mise à jour des données dans une base, il est utile de vérifier si la requête a bien été exécutée.</note>+ 
 +<callout type="primary" title="Vérification" icon="true">Pour les opérations d'insertion, de suppression ou de mise à jour des données dans une base, il est utile de vérifier si la requête a bien été exécutée.</callout>
  
 <code php *.php> <code php *.php>
Ligne 106: Ligne 108:
 \\ \\
   * **Résultat d'une commande SELECT**   * **Résultat d'une commande SELECT**
-<note>Lorsqu'il s'agit de lire le résultat d'une requête contenant la commande //SELECT//, la méthode //query()// retourne un objet de type //PDOStatement// ($reponse dans les exemples). La classe //PDOStatement// dispose de méthodes permettant de récupérer des données. La méthode des objets //PDOStatement// couramment utilisée pour lire des données est //**fetch**()//.</note+Pour les opérations d'insertion, de suppression ou de mise à jour des données dans une base, il est utile de vérifier si la requête a bien été exécutée. 
 +<callout type="primary" title="SELECT" icon="true">Lorsqu'il s'agit de lire le résultat d'une requête contenant la commande //SELECT//, la méthode //query()// retourne un objet de type //PDOStatement// ($reponse dans les exemples). La classe //PDOStatement// dispose de méthodes permettant de récupérer des données. La méthode des objets //PDOStatement// couramment utilisée pour lire des données est //**fetch**()//.</callout>
  
   * //Syntaxe// \\ //array// nomResultat **->** fetch(//integer// type); \\ \\ Cette méthode retourne un tableau  :   * //Syntaxe// \\ //array// nomResultat **->** fetch(//integer// type); \\ \\ Cette méthode retourne un tableau  :
Ligne 125: Ligne 128:
  
 === 2.4 Fermeture de la connexion === === 2.4 Fermeture de la connexion ===
-<note>Pour clore la connexion, il suffit de détruire l'objet en assignant NULL à la variable qui le gère. Si ce n'est pas fait explicitement, PHP fermera automatiquement la connexion lorsque le script arrivera à la fin.</note>+<callout type="primary" title="NULL" icon="true">Pour clore la connexion, il suffit de détruire l'objet en assignant **NULL** à la variable qui le gère. Si ce n'est pas fait explicitement, PHP fermera automatiquement la connexion lorsque le script arrivera à la fin.</callout>
  
   * //Exemple//   * //Exemple//
  • info/bdd/sqlphp.1628676602.txt.gz
  • Dernière modification : 2021/08/11 12:10
  • de phil