Lecture : Débuter avec les bases de données PHP4

ArticleCategory: [Choose a category, translators: do not translate this, see list below for available categories]

Webdesign

AuthorImage:[Here we need a little image from you]

Alessandro

TranslationInfo:[Author + translation history. mailto: or http://homepage]

original in it Alessandro Pellizzari 

en to fr Guy Passemard 

AboutTheAuthor:[A small biography about the author]

Alessandro est Administrateur Système et Programmeur Linux, après avoir utilisé plusieurs ordinateurs Amiga avec beaucoup de satisfactions. Ses préfèrences vont surtout vers la programmation PHP, Python et C, mais il reste toujours à l'affût de découvertes intéressantes dans le domaine informatique.

Abstract:[Here you write a little summary]

Cet article est une présentation du livre édité par Wrox concernant l'installation et l'utilisation de systèmes de bases de données avec PHP4.

ArticleIllustration:[One image that will end up at the top of the article]

[Illustration]

ArticleBody:[The main part of the article]

Introduction

Aujourd'hui, la majorité des sites Web PHP est basée sur une ou plusieurs bases de données. Mais combien de programmeurs connaissent réellement le fonctionnement d'une base de données relationnelle, les possibilités offertes, la manière d'optimiser les temps d'accès, et les extensions liées à l'objet ?

Ce livre est un bon point de départ pour les programmeurs cherchant à développer des applications web orientées base de données. Le lecteur disposera des bases nécessaires parmi lesquelles il pourra choisir la base de données la plus adaptée à son besoin, et les meilleures techniques pour structurer les tables et les méthodes d'accès.

Le plan du livre

Le livre comprend 13 chapitres et 3 annexes, plus un chapitre complémentaire en ligne sur le site Wrox.

Après une brève introduction de la structure du livre et de la liste de ses ressources complémentaires en ligne, le premier chapitre est une présentation rapide de PHP, avec surtout une analyse approfondie de la partie orientée objet du langage. Le deuxième chapitre se focalise sur les éléments fondamentaux d'une base de données, expliquant plusieurs modèles de BD et leur évolution historique, jusqu'au modèle RDBMS (SGDBR - Système de Gestion de Base de Données Relationnelle), leurs extensions objet et les bases XML. Ce chapitre poursuit en examinant l'accès aux bases par PHP, énumérant les bases supportées et leurs options de compilation PHP.

A partir du troisième chapitre, on aborde la structure d'une base de données, décrivant la normalisation des tables et introduisant brièvement les diagrammes Entité - Relation, puis les chapitres quatre et cinq approfondissent SQL en expliquant la création et l'insertion de données, la modification et les requêtes. Finalement , le sixième chapitre expose les éléments qui caractérisent un SGBDR comme l'intégrité référentielle, les "triggers" et les transactions.

Le chapitre sept revient sur la programmation PHP, expliquant l'intégration du SQL avancé dans les scripts PHP, en décrivant entre autres, curseurs, "triggers", vues, et index. Puis on trouve dans le huitième chapitre une introduction à l'architecture multi-tiers avec PHP, et une analyse des fonctions et des bibliothèques de classes résumant l'accès aux base de données. Le chapitre neuf poursuit l'explication de "PEAR::DB", qui sera dorénavant utilisée pour tous les exemples du livre.

Le chapitre dix est entièrement dédié à une étude de cas : une application d'enregistrement de factures et de suivi de règlements basée sur PEAR:DB; en commençant par l'analyse du problème, en passant par la définition des tables, pour aboutir à l'écriture du code de l'application.

Le chapitre suivant a une structure proche du précédent, l'étude concerne une application de gestion de bibliothèque, en utilisant des bases de données orientées objets, en particulier PostgreSQL. Il commence par l'analyse du problème, la définition des tables, et l'écriture du code, qui en raison de sa taille, se trouve sur le site de Wrox.

A partir du chapitre douze, on s'oriente vers les bases de données XML, énumérant les avantages et inconvénients par rapport aux bases relationnelles. On trouve une liste de plusieurs applications, libres ou commerciales, et pour terminer, le Xindice de l'Apache Sofware Foundation est discuté.
Les explications vont de la création de la base de données jusqu'à son remplissage à partir de documents XML, l'analyse puis l'application des technologies XPath et XUpdate pour la sélection et la mise à jour de données, apportant un bref aperçu de l'émergeant XQuery.

Le chapitre treize reprend la structure des chapitres dix et onze, partant de l'analyse du problème jusqu'à la réalisation, ceci pour une application d' échange de recettes, en présentant brièvement la séparation de privilèges entre utilisateur et administrateur.

Les annexes sont principalement dédiées à l'administration de bases de données, les stratégies de sauvegardes, l'optimisation, l'accès aux fonctions PHP DB et Apache, l'installation de PHP et iODBC sous Linux/Unix.

Pour

Les auteurs n'approfondissent pas trop, comme certains le font, la syntaxe ou l'introduction au langage PHP (ce qui est d'ailleurs mieux présenté dans des livres dédiés à ce sujet), mais surtout ils se concentrent sur l'essentiel : les bases de données et l'intégration de PHP.
Les exemples de code sont clairs et bien documentés aussi bien sur les lignes qu'en entête de code. Vous trouverez dans ces exemples de nombreux trucs et astuces.
Le site du livre (voir la rubrique "références" en fin d'article) est pratique pour lire un chapitre d'exemple, pour trouver des correctifs, et pour télécharger le code source de tous les exemples du livre.

Contre

Le texte comporte quelques coquilles, qui peuvent être gênantes pour un lecteur néophyte en Anglais, toutefois il n'y a pas d'erreur dans le code ce qui ne pose donc aucun problème pour les exemples.
Sur le site du livre vous trouverez les correctifs (voir la rubrique références à la fin de cet article)
Le livre "Professional PHP4 Databases" n'est pas (encore) paru, et le besoin d'une analyse approfondie peut exister dans certains cas mais vous ne la trouverez pas dans ce livre, en raison de sa complexité puisqu'il est destiné aux "débutants".

Conclusion

Ce livre a parfaitement atteint sa cible, une bonne base pour apprendre l'utilisation des bases de données dans des applications PHP et une analyse rigoureuse des techniques applicables à la structure des tables.
De nombreux points abordés dans ce livre sont trop souvent ignorés par les programmeurs ce qui sera sans doute un gros avantage pour traiter les aspects de sécurité, de structure et de rapidité.

Ce livre est spécialement recommandé à tous ceux qui veulent apprendre l'usage des bases de données dans des applications PHP, mais aussi et surtout pour ceux qui les utilisent sans avoir bénéficiés d'une formation suffisante.

Références