Conception de sites web dynamiques

TP7 - PHP :
objets et formulaires

Votre travail doit être déposé sous forme de zip sur moodle avant le jeudi 28 mars 12h.

Nous allons créer quelques pages d'une application de blog collectif, dans lequel on distingue 3 niveaux d'utilisateurs :

  1. les visiteurs de base, qui peuvent simplement voir les articles et les commentaires de ceux-ci ;
  2. les utilisateurs enregistrés, qui peuvent rédiger des commentaires sur les articles ;
  3. les rédacteurs, qui peuvent à la fois poster des articles et commenter.

Formulaires HTML (20')

Ecrire une page form_article.html qui contiendra un formulaire permettant d'écrire un court article. Le formulaire comprendra les champs suivants :

Ecrire une page form_commentaire.html qui contiendra un formulaire permettant d'écrire un commentaire. Le formulaire comprendra les champs suivants :

Création d'utilisateurs (40')

Créez un fichier utilisateurs.php qui va contenir la définition des classes d'utilisateurs et créer des utilisateurs particuliers.

Définissez la classe Utilisateur pour les utilisateurs enregistrés. Chacun de ces utilisateurs est défini par un nom, un prénom, un âge et un tableau d'identifiants de commentaires. La classe possède deux méthodes :

Définissez la classe Redacteur qui hérite de la classe utilisateur en lui ajoutant:

Normalement, les objets utilisateurs sont instanciés par lecture dans une base de données. Ici, vous créerez simplement un utilisateur de chacune des deux classes avec des données arbitraires. Avant de passer à la suite, faites quelques tests pour vérifier le bon fonctionnement de vos deux classes.

Traitement du formulaire (60')

Créez un fichier de traitement pour chacun des deux formulaires. Ce fichier commencera par une ligne include "utilisateurs.php" pour charger les utilisateurs.

Ce fichier définit, selon le cas, la classe Commentaire ou la classe Article. La classe Article a les attributs : identifiant ; utilisateur ; catégorie ; publié (booléen) ; texte ; tableau d'identifiants de commentaires ; note moyenne. La classe Commentaire a les attributs : identifiant ; article ; utilisateur ; texte ; note. Les deux classes ont une méthode affiche() :