Skip to main content

Petit guide PHP pour le projet web

Mettre en place des templates avec les fichiers .inc.php

Pour commencer on peut d'abord essayer de se consacrer à diviser les différentes parties du site en petites (séparer le header du reste par exemple).

Cela permet de minimiser la recondance du code dans le projet. Le projet oblige la création d'un dossier inc/ dans le dossier principal du projet. Dans celui ci on peut y placer des fichiers tel que header.inc.php dans lequel on va simplement mettre notre header.

Ainsi ce code :

<html>
  <head>
    <title>Ewins</title>
  </head>
  <body>
    <header>
      <h1>Ewins</h1>
      <nav></nav>
    </header>
    <!-- Ici viens tout le reste du code mais tout ce qui est précédemment est répétitif sur toutes les pages du site -->
  </body>
</html>

Peut devenir ceci :

<?php require_once "inc/header.inc.php"; ?>
<!-- Ici viens tout le reste du code mais tout ce qui est précédemment est répétitif sur toutes les pages du site -->

Mettre en place les classes modèles

Le projet web s'approche d'un modèle appellé le MVC (Modèle-Vue-Controlleur) c'est un modèle conçu pour éviter de mélanger tous les codes différents dans le projet. Il est séparé en 3 parties

  • Les modèles qui seront dans le dossier php/ du projet et qui sont des classes qui représentent les différents concepts du site (Utilisateur, Tournois, etc), en somme les différentes entités du MCD ou presque chaque table. Dans ce même dossier doit aussi se situer des autres classes qui permettent de créer les modèles et qui vont se connecter à la base de donnée (ce sont les seules classes qui vont contenir du code SQL)
  • Le controlleur, c'est la logique du programme, ici il y a de grande chances que les controlleur soit au même endroits que les vues, ce n'est pas la meilleure idée mais c'est pas grave pour le projet.
  • Les vues, c'est le code HTML et CSS du site, tout ce qui est relatif à l'affichage en tant que tel.

Je vais montrer un exemple plus concret plus tard dans cette synthèse

Utiliser les sessions dans le projet pour gérer les utilisateur·ice·s

On peut se faire chier à créer les cookies soit même, ou bien on peut demander à PHP de tout gérer pour nous. Une session dans PHP va créer un cookie avec un identifiant unique (qui va être stoqué chez l'utilisateur), à cet identifiant, PHP va associer des informations (celles que vous définissez dans votre code). Ainsi cela permet de garder des informations sur les gens qui visitent le site et nottament de les authentifier ou de stoquer des données "en cache" sans avoir besoin de faire tout le temps des requètes vers la base de donnée.

Encore une fois je vais en parler de manière plus concrete un peu plus tard.