TP - Introduction au PHP

Environnement de travail

Pour pouvoir coder, il nous faut comme d’habitude, un éditeur de code (vous utilisez celui que vous voulez, le même que d’habitude si vous voulez !)

Il nous faut cependant un environnement supplémentaire !!!! Afin de pouvoir coder en php, il nous faut un environnement de travail particulier. Pour cela, il nous faut : apache, et PHP sur nos machines.

  • Sous Windows, vous pouvez suivre le tuto ici et utiliser MAMP.
  • Sous Linux, vous pouvez suivre le tuto ici et utiliser ici et utiliser XAMMP

Certains disposent peut-être déjà de cet environnement :

  • son serveur
  • utilisation de php-cli
  • solutions partagées entre vous
  • etc

Du moment que la solution marche et est en adéquation avec votre façon de travailler, il n’y a pas de problème.

Favorisez la solution MAMP(Windows) ou XAMMP(Linux) sur vos machines si vous avez un doute !!!!!!

Exercice 1 : Mon Petit Gazon

  1. Créer une page bonjour.php qui affiche “Bonjour tout le monde”, la date et l’heure.
  2. Ajouter en utilisant les variables HTML de type tableau, un tableau contenant les informations suivantes :
Nom Prénom Date de Naissance Poste
Giroud Olivier 30/09/1986 Attaquant
Griezman Antoine 21/03/1991 Attaquant
MBappe Kylian 20/11/1998 Attaquant
Nobbs Jordan 08/12/1992 Milieu
Williamson Leah 29/03/1997 Défense
Earps Mary 07/03/1993 Gardien

Attention : il faut que les informations des joueurs soient enregistréées dans un tableau à deux dimensions php

  1. Implémenter une fonction qui permet de calculer l’âge d’un joueur en fonction de sa date de naissance (On prendra en compte que l’année de naissance).
  2. Ajoutez une colonne au tableau précédent afin d’afficher l’âge de chaque joueur

TIPS

  • Le lien pour la DOC est ICI
  • Définir des tableaux à double entrée => ICI
  • Parcourir un tableau => ICI
  • La concaténation en PHP => ICI
  • Manipuler un tableau en PHP array
  • Connaitre la taille d’un tableau sizeof
  • Utiliser des tableaux 2D exemple ici
  • Parcourir un tableau foreach
  • Faire des entêtes dans vos tableaux en HTML th
  • Séparer une chaîne de caractères explode
  • Forcer le type d’une variable en PHP force

Exercice 2 : Traitement des données

Nous désirons créer un fichier monTri.php permettant de réaliser un tri à bulle sur un tableau aléatoire.

  1. Créer une fonction qui initialise initialiser les données du tableau de manière aléatoire (comprises entre 1 et 100). Cette fonction prend en paramètre une taille de tableau et renvoie le tableau initialisé.
  2. Créer une procédure afficher permettant d’afficher ce tableau dans un tableau au format HTML La première ligne du tableau doit afficher l’index du tableau
  3. Créer une fonction triABulle qui renvoi le tableau trié
FONCTION triBulle(tab : tableau d'entier, taille : entier)
VARIABLES
    i : entier
    cpt : boolean
DEBUT
    cpt <- true
    TANT QUE (cpt)
        cpt <- false
        POUR i de 0 à taille -1 FAIRE
            SI tab[i] > tab[i+1]
                echanger(tab,i,i+1)
                cpt <- true
            FIN SI
        FIN POUR
    FIN TANT QUE
    retourner tab
FIN
  1. Créer une page appelée mesTableaux.php qui utilise les fonctions créées dans monTri.php

TIPS

Appeler les fonctionnalités d’un autre fichier require

Exercice 3 : Un formulaire de connexion

Nous désirons créer l’application suivante :

  1. Créer la page connexion.html suivante :
  2. Vérifier que l’utilisateur à bien saisie l’ensemble des informations du formulaires
  3. Créer la page verifierConnexion.php qui vérifie la validité du login et du mot de passe. Les logins et mot de passes sont les suivants :
login mot de passe
HarryDu93 giny<3
HermioneDu64 pattenrond
RonDu33 tfcForEver

Si les informations d’authentifications sont invalides l’utilisateur est renvoyé à la page connexion.html Sinon l’utilisateur est envoyé sur la page accueil.php

  1. Implèmenter la page accueil.php, qui affiche Bonjour login à l’utilisateur et permet à travers un lien se déconnecter afin de revenir à la page d’accueil !

TIPS

  • Rediction vers une autre page en php Attention de ne pas oublier le exit() !!
    if (maCondition){
        header('Location: accueil.php');
        exit();
    }
    header('Location: connexion.html');
  • Faire un tableau 2D de type dictionnaire en php pour stocker un login et un mot de passe

Exercice 4 : Réviser les tables de Multiplication

Nous souhaitons créer une page maMultiplication.php qui permet de s’entraîner sur les tables de multiplication. - Créer dans votre page une variable globale dont la valeur est égale à un entier tiré aléatoirement entre 1 et 20. - L’action du formulaire sera la page elle-même maMultiplication.php. - N’oublier pas que vous pouvez envoyé des informations en cachés dans <input type="hidden" name="tableEnCours"> - En utilisant les boucles, générer une page affichant la table de multiplication de cette variable dans un bloc mis en forme “agréablement”.

0 x 8 = 0

1 x 8 = 8

10 x 8 = 80

  • Afin de s’entraîner, nous voulons que l’utilisateur puisse donner les réponses aux multiplications.

  • Changer les résultats de la multiplication par des zones de saisie afin que l’utilisateur puisse saisir ses réponses.

  • Ajouter un bouton “Corriger” qui permettra de vérifier les réponses saisies. Pour chaque ligne de la table de multiplication, on affichera juste (en vert), faux (en rouge) ou non répondu (en noir) si la réponse est respectivement correcte, incorrecte ou non donnée.

  • Le score sera affiché à chaque correction. Il est calculé en fonction des réponses données :

    • bonne réponse : +1 pt
    • pas de réponse : 0 pt
    • mauvaise réponse : -1 pt
    • Ajoutez un bouton “Autre table” qui permet de recommencer avec un autre nombre.

TIPS

  • Utiliser les inputs de type hidden pour passer la table en cours d’exécution
  • Utiliser isset() pour verifier si une variable php existe ou pas
  • Inclure du php dans des inputs pour pouvoir les traiter, par exemple, en Javascript Il faut jongler avec la concaténation (le point en php), les guillemets doubles et simples.
    <?php
        $maVar=4;
        echo '<input type="text" id="monInput" value="'.$maVar.'" onclick="maFonction()"/>'
    ?>

Exercice 5 : Créer un menu

Nous désirons implèmenter le menu suivant :

  • accueil
  • exo 1
  • exo 2
  • exo 3
  • exo 4
  1. Créer une page monMenu.php contenant le menu décrit ci-dessus
  2. Créer une page AccueilTP.php incluant monMenu.php
  3. Modifier l’exercice 1, 2, 3 et 4 afin d’inclure ce menu dans leurs différentes pages

TIPS

Inclure une page php dans une autre include