Développement Web- PHP (partie II).pdf
Document Details
Uploaded by HarmlessLeibniz
Tags
Full Transcript
ACCES aux SGBD (1) En général, la communication entre un programme et une base de données suit le schéma suivant : PROGRAMME MIDDLEWARE SGBD En programmation PHP, il existe 2 méthodes pour mettre en place cette architecture :...
ACCES aux SGBD (1) En général, la communication entre un programme et une base de données suit le schéma suivant : PROGRAMME MIDDLEWARE SGBD En programmation PHP, il existe 2 méthodes pour mettre en place cette architecture : 1.accéder nativement à la base par l’intermédiaire de l’API de son middleware associé, 2.passer par ODBC, l’avantage d’ODBC est de proposer une API unifiée quelque soit le SGBD utilisé. En plus d'ODBC, PHP gère en accès natifs de nombreux SGBD : Oracle, Sybase, Informix, MySQL, Adabas, Empress, FilePro, InterBase, mSQL, PostgreSQL, Solid, SQLServer, Unix Dbm. ACCES aux SGBD (2) Un SGBD est un ensemble d'applications permettant de manipuler les données (ajout, suppression, modification et lecture), mais aussi de contrôler l'accès. Les données sont structurées de la manière suivante : Serveur de données ACCES aux SGBD (3) L'utilisation en général d’un SGBD (tel que MySQL) avec PHP s'effectue en 5 temps : 1. Connexion au serveur de données 2. Sélection de la base de données 3. Requête 4. Exploitation des requêtes 5. Fermeture de la connexion ACCES aux SGBD (4) Connexion au serveur de données Pour se connecter au serveur de données, il existe 2 méthodes : – Ouverture d'une connexion simple avec la fonction mysql_connect – Ouverture d'une connexion persistante avec la fonction mysql_pconnect Remarque : la deuxième méthode diffère de la première par le fait que la connexion reste active après la fin du script. ACCES aux SGBD (5) Sélection de la base de données Pour faire cette sélection, utilisez la fonction mysql_select_db et vous lui passez en paramètre, le nom de votre base. Remarque : les étapes sélection et requête peuvent être faites en même temps, mais il est plus simple surtout pour une seule base, de sélectionner la table avant de commencer les requêtes. Ainsi, toutes les requêtes à venir utiliseront cette base par défaut. ACCES aux SGBD (6) Envoi d’une requête Pour envoyer ces requêtes, on peut utiliser 2 fonctions : – mysql_query dans le cas où la base de données serait déjà sélectionnée – mysql_db_query dans le cas où l'on voudrait sélectionner la base en même temps. ACCES aux SGBD (10) Si il n'y a pas ou plus d'enregistrement à lire, ces fonctions retournent "false." Pour savoir combien d'enregistrements ont été retournés par la sélection, la commande mysql_num_rows prend comme paramètre l'identifiant de la requête. ACCES aux SGBD (11) Fermeture de la connexion Vous pouvez fermer la connexion au moyen de la fonction mysql_close, mais il est bon de savoir que cette opération sera faite lorsque le script se terminera. C'est donc une opération facultative. Gestion des erreurs S’il y a une erreur dans la syntaxe de la requête, on utilise la fonction mysql_error qui ne prend pas de paramètres.