xx Pratique de MySQL et PHP qui signalent un éventuel problème de conformité aux normes, etc. Ces indicateurs devraient toujours être au vert. Tout le code HTML décrit dans ce livre est conforme aux normes, et je vous conseille d’adopter dès le début cette bonne habitude. L’extension s’installe comme toutes les autres dans Firefox, en passant par le menu Outils, Modules complémentaires. L’environnement de développement Un simple éditeur de texte suffit pour modifier les exemples et créer vos propres scripts. Essayez de trouver quand même mieux que le bloc-note de Windows. Des logiciels comme EditPlus ou UltraEdit font parfaitement l’affaire. Si vous souhaitez un outil plus avancé (mais plus difficile à manier pour les débutants) je vous recom- mande bien entendu Eclipse (http://www.eclipse.org) avec l’utilisation d’une perspec- tive PHP. Le chapitre 5 présente brièvement cet environnement de développement intégré (IDE). Exercices et exemples Tous les exemples fournis, y compris le site complet dont la réalisation est intégrale- ment décrite, sont conçus pour répondre aux trois contraintes suivantes : 1. ils sont testés et fonctionnent ; 2. ils sont corrects, autrement dit chaque fragment de code donné en exemple a un objectif bien identifié, et remplit cet objectif ; 3. ils visent, autant que possible, à rester clairs et concis. Ces contraintes, parfois difficiles à satisfaire, contribuent à montrer que l’on peut développer des fonctionnalités parfois complexes en conservant un code accessible et maîtrisable. Un avantage annexe, quoique appréciable, est de vous permettre facilement d’obtenir, à partir d’un exemple qui tourne, une base de travail pour faire vos propres modifications et expérimentations. Allez sur le site du livre et récupérez le fichier exemples.zip. Placez-le dans le répertoire htdocs de votre environnement MySQL/PHP et extrayez les fichiers. Si les serveurs sont démarrés, vous devriez pouvoir accéder à l’URL htpp://localhost/exemples et vous avez tous les exemples du livre (à l’exception de ceux intégrés au site W EBSCOPE) sous la main pour travailler parallèlement à votre lecture. Organisation Ce livre comprend trois parties et des annexes. • La première partie est une présentation détaillée de toutes les techniques de base intervenant dans la construction de pages web basées sur MySQL et PHP : bases de la programmation web, création de tables MySQL, création de scripts PHP, accès à MySQL avec PHP, etc. Avant-propos xxi Cette partie comprend un chapitre qui explique comment réaliser les fonc- tions les plus courantes d’un site web dynamique : découpage d’un script en fonctions, gestion de formulaires HTML, transfert et gestion de fichiers, sessions et traitement des erreurs. Ces fonctions sont expliquées indépendam- ment d’une application particulière. Le dernier chapitre de cette partie est entièrement consacré à la programma- tion orientée-objet, et montre comment concevoir des modules (ou classes) qui facilitent ensuite considérablement les tâches répétitives et routinières pendant le développement d’un site. • La deuxième partie est consacrée à la conception et à la réalisation complète d’un site web, comprenant la conception de la base, l’organisation du code et la méthode de développement, l’authentification des utilisateurs et la produc- tion du site. Outre la génération, classique, des pages HTML, des chapitres sont consacrés à l’utilisation de XML pour l’échange et la publication de données, et à la production dynamique de graphiques. • La troisième partie propose une introduction à un environnement de déve- loppement avancé (le Zend Framework) un récapitulatif du langage SQL, déjà présenté de manière progressive dans les deux premières parties, et un récapitulatif du langage PHP. Un ensemble d’annexes donnant en ordre alphabétique les principales com- mandes, options et utilitaires de MySQL et de PHP, ainsi que quelques conseils d’administration, conclut le livre. Conventions J’utilise les conventions typographiques suivantes : • La police `a chasse constante s’applique à tous les exemples de code, de commandes et de programmes, que ce soit un shell UNIX, SQL, PHP, etc. • La police `a chasse constante en italiques est utilisée pour distinguer les paramètres des mots-clés dans la syntaxe des commandes. • Le texte en italiques est utilisé pour les URL, les noms de fichiers, de pro- grammes et de répertoires cités dans le texte (autrement dit, non inclus dans du code). L’italique est également utilisé pour les termes étrangers et pour la mise en valeur de mots ou d’expressions importants. De plus, le code s’appuie sur des conventions précises pour nommer les fichiers, les variables, les fonctions, les noms de tables, etc. Ces conventions font partie d’une stratégie générale de qualité du développement et seront présentées le moment venu. Remerciements Je souhaite remercier chaleureusement tous ceux qui sont à l’origine de ce livre, ont permis sa réalisation ou contribué à l’amélioration du manuscrit. Merci donc à Bernd Amann, Joël Berthelin, Olivier Boissin, Bertrand Cocagne, Cécile, Hugues et Manuel Davy, Jean-François Diart, Cédric du Mouza, David Gross, Cyrille Guyot, xxii Pratique de MySQL et PHP Alain Maës, Joël Patrick, Michel Scholl, François-Yves Villemin, Dan Vodislav, Emmanuel Waller et aux nombreux lecteurs qui m’ont suggéré des améliorations. J’ai également bénéficié des remarques et des conseils de personnes auxquelles je tiens à exprimer plus particulièrement ma reconnaissance : Robin Maltête avec qui j’ai réalisé de nombreux sites et qui m’a apporté de nombreux problèmes stimulants à résoudre ; Michel Zam pour des discussions très instructives sur la conception et la réalisation de logiciel robustes et élégants ; Xavier Cazin qui a été à l’origine de ce livre et à qui je dois de très nombreuses et utiles remarques sur son contenu. Enfin, merci à Jean-Luc Blanc qui m’a accordé sa confiance et son temps pour la réalisation de cette quatrième édition. PREMIÈRE PARTIE Programmation web avec MySQL/PHP . xx Pratique de MySQL et PHP qui signalent un éventuel problème de conformité aux normes, etc. Ces indicateurs devraient toujours être au vert. Tout le code HTML décrit dans ce. parties et des annexes. • La première partie est une présentation détaillée de toutes les techniques de base intervenant dans la construction de pages web basées sur MySQL et PHP : bases de la. des utilisateurs et la produc- tion du site. Outre la génération, classique, des pages HTML, des chapitres sont consacrés à l’utilisation de XML pour l’échange et la publication de données, et