e-Miage - module C216 - devoir 1

Tuteur du module : Lionel Médini

Dans ce devoir, vous allez développer une application simple de calculatrice en ligne, que vous allez améliorer petit à petit.

Objectifs pédagogiques

Formulaire Web

Vous allez tout d'abord créer l'interface de votre application : il s'agit d'une page Web basique comportant deux champs textuels pour les opérandes, une boîte de sélection pour l'opérateur (4 opérations possibles), et un bouton de validation pour lancer le calcul. Vous prévoierez également un espace d'affichage pour le résultat.

Votre formulaire peut par exemple ressembler à l'image suivante :

image formulaire calculatrice

Lorsque l'utilisateur cliquera sur le bouton "Calculer", les données seront envoyées en POST à une page nommée "WebCalc" sur votre serveur.

Exercice : réalisez une page XHTML statique possédant les caractéristiques décrites ci-dessus. Ne vous préoccupez pas pour l'instant de l'affichage du résultat.

Application Web

Vous allez maintenant écrire quelques pages PHP dynamiques

Exercice : dans un premier temps, contentez-vous de récupérer les données des formulaires et d'afficher l'opération à réaliser. Une fois cela fait, écrivez un script PHP qui calcule le résultat de cette opération, et rajoutez, à la suite de l'affichage précédent, le caractère "=" , suivi de ce résultat.

Au final, votre page PHP doit afficher simplement une ligne de texte ressemblant à  : "4 + 3 = 7".

Remarques
Exercice : modifiez ensuite votre application pour que le résultat apparaisse en bas du formulaire de saisie, afin que l'utilisateur n'ait pas à utiliser le bouton "Back" pour effectuer un nouveau calcul. Pour cela, vous devrez inclure le code de votre formulaire directement dans la page PHP de calcul des résultats.

Amélioration de l'application

Vous allez tout d'abord "verrouiller" votre application, de façon à éviter les messages d'erreurs que les utilisateurs pourraient provoquer.

Rendez votre application modulaire en séparant la présentation (formulaire HTML et affichage du résultat) de la logique métier (réalisation des calculs). Pour cela, vous allez créer quatre nouveaux fichiers PHP (un pour chaque opération) qui vont chacun réaliser l'une des opérations. Depuis la page principale (qui contient votre formulaire), vous incluerez les résultats renvoyés par la page PHP correspondant à l'opération demandée par l'utilisateur (ici, un lien sur la syntaxe d'inclusion d'une page PHP dans une autre).

Gestion de sessions

Vous allez maintenant rajouter deux boutons à votre formulaire. Ils vont permettre à l'utilisateur de stocker en "mémoire" le dernier résultat calculé, et de le réafficher, toujours dans le champ "résultat".

Remarque : vous ne pouvez pas stocker cette valeur dans une variable globale de votre application, car celle-ci serait commune à tous les utilisateurs qui utiliseront votre système. C'est la raison pour laquelle, pour chacun de vos utilisateurs, vous stockerez ce nombre dans une variable de session (voir ici pour la procédure à suivre).

Modalités de rendu du devoir

Vous m'enverrez par mail le code (correctement commenté) de la dernière version de votre devoir, compressé dans un fichier au format ZIP.

Vous veillerez particulièrement à ce que le code servi au client (celui de vos pages Web statiques ainsi que le code généré dynamiquement) soit conforme aux recommandations XHTML strict et CSS.
Valid XHTML 1.0 Strict