Projet PHP Estiam E2

Réalisation d'un blog d'articles avec gestion d'utilisateurs.

Dans ce projet, vous allez réaliser un blog permettant la lecture d'articles. Les articles pourront être ajouter par les membres du blog qui auront un compte utilisateur.

Vous allez réaliser pas à pas les différentes étape de construction du blog. Pour cela, vous allez vous aidez du cours et de documentations que vous pourrez aussi trouver ailleurs sur le net. Vous allez apprendre PHP et surtout le développement objet et l'architecture MVC. Il faudra tout faire vous même à la main. Il ne sera donc pas possible d'utiliser un CMS de type wordPress ou autre pour réaliser se projet. Sinon le projet ne sera pas noté.

Ce qu'il faut déjà savoir :

Pour réaliser le projet, vous devez avoir quelques connaissances en Html, css et sql. Avoir des connaissances ou des notions en algorithmie surtout pour tout ce qui est boucle et autres opérateurs de comparaison, logiques, conditions... La note ne prendra pas en compte la partie HTML et CSS et donc le design ne comptera pas dans la note. Un site très moche qui fonctionne aura une meilleur note qu'un site au design Pro mais qui ne fonctionne pas comme il faudrait.

Dans ce projet vous allez réaliser plusieurs types d'exercices, qui seront en fait des morceaux du future blog. Vous allez réaliser des bouts de scripts pour apprendre une technique PHP et ensuite assembler et compléter les scripts comme les pièces d'un puzzle pour fabriquer votre outil.

Voici les différentes étapes de réalisation du blog :

1 - Environnement de développement :

Création d'un environnement de développement avec PHP, Mysql et un serveur Web (Apache). Dans le cours en ligne vous trouverez la documentation pour installer WampServer (Windows) ou Mamp (Mac).

2 - Créer une page d'accueil

Pour notre projet, il faudra une page d'accueil qui affichera par exemple les derniers articles du blog, les derniers commentaires ou ce que vous voulez. Cette page affichera surtout un menu avec des liens vers les différents exercices qu'il faudra réaliser pour construire notre blog. Nous allons appeler cette page « accueil.php » et non pas « index.php » car la page index.php nous servira pour autre chose que nous verrons un peu plus loin.

Dans le menu de cette page, je vous indiquerais les liens qu'il faudra ajouter dans les étapes suivantes.

3 - Création des répertoires public

Dans votre dossier projet, vous allez avoir besoin de fichiers utilisables par vos pages web (images, css, js, documents...). Pour stocker et classer correctement tous ces fichiers vous allez créer un sous dossier « public » à la racine de votre projet. Ce dossier « public » indique par son nom que tout ce qu'il va contenir et accessible publiquement et donc il n'y a rien à cacher.

Dans le dossier « public » vous allez créer les sous dossiers suivants :

Je vous laisse imaginer ce que vous allez mettre dedans !

4 - Créer une page de formulaire

Dans la page d'accueil vous allez créer un lien vers une nouvelle page.
Dans cette nouvelle page, vous allez créer un formulaire html.

On va créer un formulaire simple avec les champs suivants :

Infos sur les formulaire html
Lors de la création d'un formulaire html avec récupération de fichier (type file), il faut indiquer dans la structure du formulaire que vous allez récupérer des fichiers. Pour cela vous devez ajouter l'instruction « enctype='multipart/form-data' » dans la balise <form>.
Et ne pas oublier de choisir la méthode POST pour la transmission des données.


<form action='' onsubmit="" method='post' enctype='multipart/form-data' name='articleForm'>

5 - Récupération des données du formulaire

Quand vous allez valider le formulaire normalement la page se recharge. Les données du formulaire ont été envoyées au serveur web et PHP est capable de les récupérer.

Pour savoir si PHP a récupéré toutes les valeurs de votre formulaire, vous pouvez ajouter dans votre fichier PHP qui contient votre formulaire l'instruction suivante :

print_r($_POST );

Cette fonction va afficher toutes les valeurs récupérées depuis le formulaire.

Pour savoir ce qu'est la variable $_POST en PHP je vous explique ça dans le cours à cette page, rubrique SuperGlobales :
https://classe-en-ligne.fr/fonctions_base_php

6 - Mise en place de l'architecture MVC

Comme pour toutes constructions, avant de poser les cloisons, les meubles, la décoration... il faut déjà avoir l'architecture globale de votre construction. Ça commence par un schéma d'architecture et ensuite on commence la construction globale en respectant le schéma de l'architecture.

Dans cette exercice vous allez mettre en place votre architecture MVC en respectant le schéma que vous trouverez ici : https://classe-en-ligne.fr/framework_mvc