Cours de Rémi JarjatCours de Rémi Jarjat
  • Liste des cours
  • Culture numérique
  • Git
    • Terminologie
    • Avant de commencer
    • Créer un dépôt (local)
    • Enregistrer des changements
    • Des branches
    • Mise en commun du travail
    • Annuler des changements
    • Réécrire l'historique
    • Des outils pour se simplifier Git
    • Exercices
    • Exemples pratiques
  • Linux
    • Installation
    • Historique
    • Rangement des fichiers
    • Les processus
    • Commandes de base
    • Commandes avancées
    • /linux/6-other-technologies.html
    • Exercices
    • Correction des exercices
  • PHP
    • Environnement de travail
    • Bases du PHP
    • Tests et boucles
    • Procédures et fonctions
    • Interagir avec l'utilisateur
    • La temporisation de sortie
    • PHP Doc et PSR
    • PHP Orienté objet
    • Héritage et objets
    • Factorisation
    • Manipuler la BdD avec PDO (PHP Data Object)
    • Architecture MVC
    • Webservices REST
    • Exercices - Bases
    • Exercices - Séparer en plusieurs fichiers
    • Exercices - POST et SESSION
    • Exercices - Panier et validation
    • Exercices - Objets
    • Exercices - BdD avec PDO
    • Projet - montage d'ordinateurs
    • Projet - Personnages de Jeux de Rôle
  • Symfony
    • Installer Symfony et son environnement de travail
    • Structure et utilisation d'un projet
    • Le routing
    • Les controllers
    • Twig
    • Les services et l'injection de dépendances
    • Doctrine et la BdD
    • Formulaires
    • Les traductions
    • Event listeners/subscribers
    • Connexion et sécurisation
    • Bundles
    • Easy Admin Bundle
    • API Platform
    • Pense-bêtes
    • Symfony au quotidien
    • Travailler avec Docker
    • Projet : annonces de SPA / éleveurs
    • Exercices
  • Javascript
    • Les bases du langage
    • Manipulation logique
    • Le DOM
    • JQuery
    • Ajax
    • Programmation orientée objet
    • Webpack
    • Outils utiles
    • Révisions
  • Serveur Lamp
  • Déploiement
    • Des outils et manières de faire
    • Déploiement par FTP
    • Wordpress
    • Intégrer Git dans le processus
    • GitHub Pages pour déployer facilement
    • Symfony et Angular
  • Docker
  • Intégration continue
  • Sécurité informatique

Exercices - Séparer en plusieurs fichiers

  • 6. Séparation des fichiers
    • Correction
  • 7. Utiliser git
    • Correction
  • 8. Mise en place d'un layout
  • 9. Header
  • 10. Footer
    • Correction des exercices 8, 9 et 10
  • 11. Création d'une page d'accueil
    • Correction
  • 12. Lier nos pages
    • Faire relire votre code (Pull Request)
    • Correction
  • 13. Mettre en place un menu

Pré-requis :

  • avoir un environnement de travail (Wamp / Xampp / Mamp ou équivalent)
  • avoir des bases de PHP

Correction :

  • En vidéo, tout le long des exercices (après l'énoncé correspondant)
  • Dans le code, sur le repository dédié aux corrections sur GitHub.

6. Séparation des fichiers

Nous allons maintenant séparer notre code en plusieurs éléments, à thème. L'idée est ici d'avoir des fichiers plus spécialisés et rapides à retrouver.

  • Séparer le code en plusieurs fichiers php :
    • Un pour les variables
    • Un autre pour les fonctions
    • Un pour le HTML
  • Appeler ces fichiers dans le HTML (utiliser include pour appeler les différents fichiers où vous le souhaitez)

Correction

7. Utiliser git

  • Créer un projet sur Github ou Gitlab (invitez-moi sur le projet, mon pseudo est Dreeckan)
  • Créer votre fichier .gitignore et y ajouter 2 lignes : .idea et .vscode (ce sont des fichiers liés aux IDE, il vaut mieux les ignorer au plus tôt)
  • Créer un premier commit, si ça n'est pas déjà fait
  • Pusher votre code sur Github ou Gitlab
  • Partager le lien (en privé sur Discord ou en m'invitant sur le projet)
  • Créer une branche ajout-layout pour l'exercice suivant

Correction

8. Mise en place d'un layout

Ce que j'appelle layout : nous allons découper notre HTML pour en extraire les éléments communs (balises <html>, <head>, <body>, etc.) et les mettre dans des fichiers qui vont être inclus dans toutes nos pages.

  • Créer un dossier includes et y ajouter les fichiers contenant les variables et les fonctions
  • Dans ce dossier, y ajouter un fichier header.php et un fichier footer.php

9. Header

L'idée est ici de regrouper la plus grande partie du code commun, pour l'inclure dans toutes nos pages (et donc, réduire le nombre de fois où on a besoin de l'écrire).

  • Dans header.php, déplacer les includes des fichiers de variables et de fonctions (remplacer les includes par des require_once et rechercher ce que fait cette fonction)
  • Ajouter le html qui va être commun à toutes nos pages (balises <html>, <head>, <body>, etc.)
  • Inclure le fichier header.php dans la page de liste des bonnets

10. Footer

  • Dans footer.php, ajouter le html commun à toutes nos pages se trouvant après le php
  • Inclure ce fichier footer.php dans la page de liste

Correction des exercices 8, 9 et 10

11. Création d'une page d'accueil

L'idée est ici de créer une seconde page list.php qui va contenir notre tableau précédent, et de transformer index.php en une page d'accueil avec une présentation plus accrocheuse.

  • Renommer le fichier index.php en list.php. On ne change rien dans ce fichier pour le moment, nous allons créer une nouvelle page d'accueil, séparée.
  • Créer un nouveau fichier index.php et y appeler nos header et footer avec include ou include_once (pour inclure les éléments communs à toutes les pages)
  • Inclure le style et le js de Bootstrap, disponible ici
  • Inclure sur cette page une liste des 3 premiers bonnets de notre liste
  • Leur trouver une image pour les rendre plus jolis (je laisse ça à votre jugement 😉) et ajouter le lien de cette image dans les données
  • Utiliser les cards de Bootstrap pour les mettre en forme

Correction

12. Lier nos pages

Maintenant que nous avons deux pages, nous voulons naviguer de l'une à l'autre.

  • Dans la page d'accueil, sous les 3 produits, ajouter un lien vers list.php (Voir tous les produits)
  • Le mettre en forme avec Bootstrap (en lui appliquant la classe des boutons par exemple)

Correction en vidéo :

Faire relire votre code (Pull Request)

  • Créer une Pull Request (ou Merge Request si vous êtes sur Gitlab)
  • Mettez-vous en groupe (si ce n'est déjà fait) et invitez-vous sur vos projets respectifs
  • Relisez le code des autres et faites-leur vos retours sur leur code

Correction

13. Mettre en place un menu

À partir de cet exercice, nous allons commencer à manipuler les variables superglobales. Dans un premier temps, facilitons la navigation de l'utilisateur.

  • Créer une nouvelle branche (git) (nommée par exemple ajout-session) et y travailler
  • Ajouter un menu en haut de toutes les pages
  • Mettre un lien vers la page index.php et un autre vers list.php
  • Le mettre en forme avec Bootstrap (composant navbar par exemple)

Correction vidéo :

Dernières mise à jour :
Prev
Exercices - Bases
Next
Exercices - POST et SESSION