Les Cahiers du programmeur. PHP [2]. Ateliers Web professionnels avec PHP/
MySQL et JavaScript. Philippe Chaléat. Daniel Charnay. Avec la contribution de
...
Les Cahiers du programmeur
PHP [2]
Ateliers Web professionnels avec PHP/MySQL et JavaScript
Philippe Chaléat Daniel Charnay
Avec la contribution de Martine Chalmond
© Groupe Eyrolles, 2002 ISBN : 2-212-11089-8
1
Présentation PHP JavaScript
PHP | MySQL | phpMyAdmin | Smarty | Windows | Linux | WAP | LDAP | cURL | SOAP
1
Une interface proche de l’utilisateur
MOTS-CLÉS
Aide en ligne Multifenêtrage Aiide et contrôles de saisie Lisstes de valeurs
B Aide contextuelle B Application multi-fenêtrée B Aide à la saisie B Liste de valeurs B Templates B WAP B Transfert de fichiers B E-mails, LDAP B Format PDF B Session B cURL B Services Web B SOAP
3
Solutions avancées
Transfert de fichiers Accusé de réception Services Web avec cURL Services Web : XML, SOAPP
2
Une interface paramétrable
Templates Templates et WAP
OUTILS
B PHP B MySQL B phpMyAdmin B Smarty B Windows, Linux
© Eyrolles, 2002
F Tout au long de ce cahier, vous allez travailler à la réalisation d’éléments pour des applications Web et aborder en particulier les notions de stockage des données, de développement côté serveur et de développement côté client. Les ateliers mélangeront donc souvent, dans les exemples choisis, les deux langages de script PHP et JavaScript, ainsi que des accès à la base de données MySQL : l’idée n’est pas d’apprendre l’un ou l’autre des langages, mais d’apprendre à intégrer diverses technologies pour construire une application avec un seul souci, son efficacité.
Les Cahiers du programmeur PHP/JavaScript (2)
Une interface proche de l’utilisateur (ateliers 2 à 6) Après un bref rappel sur le scripting côté client et côté serveur à l’atelier 2, on abordera, au cours des ateliers 3 à 6, une section orientée « client » autour des thèmes de l’ergonomie, du contrôle et de l’assistance à la saisie. Vous découvrirez comment construire une aide contextuelle (atelier 3), comment proposer une application multifenêtrée à l’aide de différentes instances du navigateur (atelier 4), comment limiter, et surtout comment aider et assister les actions de vos utilisateurs tout au long de leur travail sur votre application (atelier 5). Cette section se terminera par un cas d’utilisation fréquent, la gestion des choix dans de longues listes de valeurs, listes qu’il est impossible de traiter dans un objet standard des formulaires HTML (atelier 6).
Une interface paramétrable (ateliers 7 et 8) Au cours des ateliers 7 et 8 consacrés aux templates (modèles de présentation d’une page Web) vous découvrirez comment dissocier le code PHP qui implémente la logique de votre application et le code HTML qui permet de formater l’interface utilisateur de cette application. Vous gagnerez ainsi en facilité de maintenance, pourrez aisément tester plusieurs types d’interface ou encore soustraiter la conception de cette interface. Vous verrez même, dans l’atelier 8, que cette approche vous permettra d’ouvrir au monde du WAP une application initialement prévue pour le Web.
Solutions avancées (ateliers 9 à 14) On traite maintenant les données fournies par l’utilisateur de l’application. Au-delà des transferts de fichiers (atelier 9), les scripts serveurs vont générer des e-mails (atelier 10) en utilisant des bases LDAP, émettre des accusés de réception imprimables au format PDF (atelier 11). Des transactions plus longues vont utiliser des mécanismes de sessions (atelier 12) et stocker des données utilisateur dans la base de données. Dans l’atelier 13, les serveurs parlent aux serveurs et tentent d’agréger les données de l’un aux informations de l’autre : c’est l’utilisation de cURL, en introduction à l’atelier 14 qui détaille l’utilisation des services Web, avec en exemple l’utilisation de Google. Ce dernier atelier vous fera découvrir les technologies autour du protocole SOAP.
2
© Eyrolles, 2002
Ateliers Web professionnels avec PHP/MySQL et JavaScript
Installations (Annexe 1) Vous trouverez, en annexe de ce cahier, les manuels d’installation qui vous permettront d’environner votre serveur Web des composants nécessaires pour qu’il devienne un véritable serveur d’applications. Apache, à lui seul, ne vous permettrait que la distribution de pages statiques, et le minimum que vous devrez lui adjoindre sera un interpréteur de script : PHP. La plupart de ces applications géreront des données et la base de données MySQL sera donc très vite nécessaire. Qui dit base de données, dit administration de cette base ; vous installerez alors un troisième composant, phpMyAdmin. Votre serveur est maintenant quasiment opérationnel, beaucoup d’applications prestigieuses que vous utilisez quotidiennement sur Internet n’ont pas un environnement plus riche ! Débauche de technologie n’est pas garant de plus d’efficacité… On terminera donc les installations avec un optimiseur pour le moteur PHP et pour gérer un aspect homogène des services que vous allez proposer, on installera enfin le moteur de templates Smarty. Bien sûr si vos applications Web sont destinées à être installées chez un hébergeur, vous n’aurez pas à effectuer ces installations ; néanmoins, cette lecture vous permettra de connaître les prérequis pour vos applications et vous aidera ainsi à mieux sélectionner votre hébergeur.
Et de Windows à Unix (Annexe 2) La commodité de développement, la disponibilité de tous les composants et leur facilité d’installation sur Windows font de cette plate-forme un lieu idéal pour déployer et tester vos applications. Attention cependant ! la production de vos applications se déroulera le plus souvent dans un autre monde : Unix. En effet, les hébergeurs proposent plutôt ce système et il y a fort à parier que votre société vous demandera d’ouvrir des applications intranet sur un serveur Web sous Linux. Ce dernier chapitre vous donnera quelques conseils pour migrer votre développement de Windows à Unix. Rassurez-vous, vous n’aurez écrit que des scripts, aucune recompilation ne sera nécessaire et si vous avez respecté les quelques recommandations de cette annexe, une simple recopie de votre code sera suffisante.
© Eyrolles, 2002
3