Aller au contenu

Exercices

Calculatrice simple

Créez le fichier calculatrice_base.php qui affiche une petite calculatrice permettant d'additionner/ soustraire / multiplier ou diviser 2 nombres.

Code de départ
Code de départ
<!DOCTYPE html>
<html lang="fr">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Calculatrice Simple</title>
</head>

<body>
    <header>
        <h1>Calculatrice Simple</h1>
    </header>
    <main>
        <section>
            <div>

            </div>
            <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
                <input type="text" name="nbr1" placeholder="Nombre 1" value="" />
                <select name="operation">
                    <option value="+">+</option>
                    <option value="-">-</option>
                    <option value="X">X</option>
                    <option value="/">/</option>
                </select>
                <input type="text" name="nbr2" placeholder="Nombre 2" value="" />
                <input type="submit" name="btn_submit" value="Calculer" />
            </form>
        </section>
    </main>
</body>

</html>

Contraintes

  • Les nombre 1 et nombre 2 ne peuvent être que des valeurs numériques
  • Les nombre 1 et nombre 2 sont obligatoires à l'encodage
  • Pensez à vous prémunir des failles XSS
  • N'oubliez pas qu'il existe des outils permettant d'envoyer des requêtes HTTP personnalisées, contournant ainsi l'interface utilisateur. Pensez à vérifier les données provenant de la liste déroulante
  • Affichez le résultat en-dessous du formulaire
  • Affichez les messages d'erreur en-dessous du formulaire
  • Il n'est pas possible de réaliser une division par zero. Un message doit être affiché dans ce cas.
  • N'oubliez pas la persistance des données, y compris dans la liste déroulante.
  • Utlisez des fonctions. Ex : une fonction qui réalisera le calcul. Voici par exemple sa documentation :
Signature fonction calcul()
<?php 
/**
 * Calcul du résultat
 * @param float $nbr1 : premier nombre
 * @param float $nbr2 : deuxième nombre
 * @param string $operation : opération à effectuer
 * @return float|string résultat de l'opération ou message d'erreur
 */

Exemples d'affichage :

calculatrice simple

calculatrice simple

calculatrice simple

calculatrice simple

Soluce

Devinette

Créez le fichier devinette.php qui permet de jouer à deviner un nombre entier compris entre 1 et 10 en un maximum de 5 tentatives.

Affichez le nombre et les tentatives que l'utilisateur a déjà réalisées ainsi qu'un message indiquant, selon les cas:

  • Bravo! (l’utilisateur a trouvé le nombre en max 5 tentatives)

  • Perdu! (L’utilisateur n’a pas trouvé après 5 tentatives)

  • Le nombre caché est plus petit/grand...

  • Relancez le jeu en fin de partie.

description

Formulaires du projet

Connexion

Nous allons travailler mettre en place les validations pour le formulaire de connexion (page 4 du cahier des charges).

Pour rappel :

  1. L’utilisateur demande à s’authentifier
  2. Le système affiche le formulaire de connexion
  3. L’utilisateur entre son courriel, son mot de passe et valide.
  4. Le système vérifie la validité du courriel ainsi que la présence du mot de passe. Le système vérifie la présence du courriel dans ses profils et si le mot de passe correspond au courriel
  5. Le système charge les informations de profil du brocanteur et affiche la page “Espace brocanteur”

Toutes les étapes ne peuvent évidemment pas être réalisées pour le moment. Nous allons nous concentrer sur la verification du courriel et la présence du mot de passe. Si ces deux données sont valides, on affichera "Le traitement va suivre" (et nous le complèterons ultérieurement). Dans le cas inverse, vous affichez les erreurs sans oublier la persistance des données.

Inscription

Faites de même pour le formulaire d'inscription : UA-A.1 : S’inscrire à la foire aux puces.

L'étape 2 sera réalisée ultérieurement et vous vous arrêtez à l'étape 4.

Calculatrice entière (Facultatif: pour ceux qui aiment les défis !)

Créez le fichier calculatrice_entiere.php qui affiche une calculatrice qui permet d'effectuer des opérations simples (+,-,*,/) et retourne toujours un résultat arrondi en entier.

description

  • Les nombres sont encodés chiffre après chiffre (On tape 1, puis 2 pour entrer 12)

  • Si on tente une division par 0, un message l'indique et ne réalise pas le calcul.

  • Anticipez une mauvaise séquence de touches (exemple : 1 ++/ 2 =)

  • La touche 'C' permet de réinitialiser la calculatrice.