Ce projet basé sur le développement Frontend, et j'ai récupérer les données par fetching depuis le site Open Trivia DB https://opentdb.com/api_config.php
Le but de ce projet de pratiquer et utiliser les composants React , pour développer un autre projet avec PHP et React à travers un api platform.
l'Archittecture suivi dans ce projet
Pour rialisé ce projet j'ai utilisé PHP 7.3, MySQL , JavaScript ,PayPal Express Checkout, Tinymce(wysiwyg)
Je n’ai pas utilisé un PHP Framework, mais j’ai créé un petit Framework qui peut me servir dans ce projet que je peux, bien évidemment, réutiliser dans d’autres projets.
J’ai utilisé une architecture de type MVC, en m’approchant d’une structure de code utilisée par un Framework comme Laravel / Symfony.
J'ai séparé le projet en troix partis :
L’idée c’est de ne pas laisser directement l’accès au serveur à la racine, je veux vraiment limiter l’accès à certain dossier qui permet d’une part d’avoir une meilleure sécurité et d’autre part de mieux s’y retrouver.
contient tous les fichiers publiques.
contient tous les fichiers qui sont spécifiques à ce projet.
contient tous les fichiers qui sont génériques. ce dossier je peux réutiliser de projet en projet.
MVC, Singletone, Factory, dependency injection.
Le maquettage rialisé avec Adobe XD.
Conception et réalisation du site institutionnel de l’association Massis avec Worpress (Front-End ).
Système d’adhésion et de gestion des compétitions réalisé avec PHP 7 Mysql (Back-End).
Massis Site webPour réaliser la partie administration, j’ai utilisé PDO, composant d’interface pour l’accès à la base de données, ici sous MySQL. PDO est orienté objet et ne se limite pas à MySQL. Utiliser PDO permet d'éviter de changer le nom des fonctions, la syntaxe... lorsqu'on change de SGBD : seule la configuration de la connexion doit être modifiée.
j’ai essayé de rapprocher du modèle MVC
Le fichier index.php : il s’agit du contrôleur central/frontal, point d’entrée des requêtes effectuées par les utilisateurs du site. Il effectue le routage de toute l’application et fait les inclusions des contrôleurs nécessaires pour traiter l’information.
"Model" : cette partie exécute la logique métier de l’application. Son rôle est de récupérer les Informations « brutes » dans la base de données, de les organiser et de les assembler pour qu'elles puissent ensuite être traitées par le contrôleur. On trouve dans cette partie les requêtes SQL.
"View" : s’occupe de la présentation des données à l’utilisateur, elle retourne une vue des données venant du modèle, en d’autres termes c’est elle qui est responsable de produire les interfaces. On y trouve essentiellement du code HTML mais aussi quelques boucles et conditions PHP très simples.
"Controller" : chargés de router les informations, ils décident qui va récupérer l’information et la traiter (calculs ou des vérifications d’autorisations).