Você está na página 1de 9

Mini-Projet 1 : 5me Anne GL

Sommaire
Prambule ............................................................................................................................................... 2 Dmarche ................................................................................................................................................ 2 Projet 1 : Un site de rencontres ............................................................................................................... 3 Cahier des charges ............................................................................................................................... 3 Linterface............................................................................................................................................ 3 La page daccueil .............................................................................................................................. 3 La page dinscription ........................................................................................................................ 3 La page de recherche ....................................................................................................................... 4 La base de donnes MySQL .................................................................................................................. 5 Projet 2 : Dictionnaire de citations interactif ........................................................................................... 6 Linterface............................................................................................................................................ 6 La page daccueil .............................................................................................................................. 6 La page daffichage des rsultats ...................................................................................................... 6 La page dinsertion ........................................................................................................................... 7 La base de donnes MySQL .................................................................................................................. 7 Projet 3 : Site e-Commerce ..................................................................................................................... 7 Les besoins du client ............................................................................................................................ 7 Votre travail ......................................................................................................................................... 8 Fonctionnement du site ....................................................................................................................... 8 La base de donnes MySQL .................................................................................................................. 9

Pr. A. MESRAR

Page 1

Prambule
Vous devez choisir de raliser un des trois projets dcrits ci-dessous. Les pr-requis de bases avoir pour commencer la programmation de ces sites sont : PHP de base ; accs aux BD et les sessions. Attention : Le projet doit tre grav sur un CD et doit tre rendu avant le 03 ou 04 Novembre selon les groupes au cours des sances. Critre de notation : 1. Clart du code (indentation, rpertoires du site, images) 2. Codage de lensemble des pages 4. Optimisation du code

5 pts 10 pts 5 pts

Note Finale sur 20 pts

Dmarche
1. 2. 3. 4. 5. 6. 7. Pour chaque projet vous devrez suivre la dmarche suivante : Lire attentivement le cahier des charges propos. Dcomposer le site en diffrents modules, auxquels correspondront autant de pages. tablir un schma gnral de fonctionnement mettant en relief les liens entre ces diffrentes pages. Tracer les grandes lignes de lorganisation de chaque page sous forme de schma, en sparant le code HTML du code PHP. crire le code de chaque partie sans trop entrer dans les dtails de design dans un premier temps. Effectuer des tests approfondis sur chaque page en essayant denvisager les divers comportements des utilisateurs, leurs erreurs ventuelles et les effets de celles-ci sur votre code. Mettre en place lensemble des pages et tester leurs interactions dans les mmes conditions.

8.

Pr. A. MESRAR

Page 2

Projet 1 : Un site de rencontres


Cahier des charges
Le site offre aux internautes sportifs la possibilit dentrer en contact avec dautres personnes pratiquants ou supporters dun mme sport dans un dpartement donn. Le site est ralis avec PHP et une base MySQL. Chaque page affiche un en-tte commun. Pour avoir accs aux informations du site, chaque visiteur senregistre au pralable en tant que pratiquant ou supporter dau moins un sport. Lidentification se fait par le biais de le-mail du visiteur. Une fois identifi, le visiteur a accs une page de recherche affichant les coordonnes des personnes qui rpondent aux critres quil a dfinis. Lautorisation daccs et le-mail sont stocks dans un cookie. Un visiteur non enregistr souhaitant accder la page de recherche est redirig automatiquement vers la page dinscription. Si un visiteur dj identifi veut sinscrire pour un autre sport que celui de sa premire inscription, le formulaire affiche ses coordonnes automatiquement dans le formulaire afin de lui faciliter la saisie.

Linterface
Linterface comprend trois pages, la page daccueil, la page dinscription et la page de recherche, chacune dote de fonctionnalits spcifiques.
La page daccueil

Nomme index.php, la page daccueil contient les lments suivants : En-tte commun. Liste des sports existants dans la base.613 Zone de saisie de le-mail pour identifier le visiteur. Si le-mail figure dj dans la base, un message de bienvenue saffiche avec le nom du visiteur, et les donnes personnelles du visiteur sont enregistres dans un cookie. Deux nouveaux liens sont crs dynamiquement, un vers la page de recherche et un vers la page dinscription, permettant de senregistrer pour un nouveau sport. Si le-mail ne figure pas dans la base, le visiteur est redirig automatiquement vers la page dinscription. Lien vers la page dinscription pour les personnes non encore enregistres.
La page dinscription

Nomme ajout.php, la page dinscription contient les lments suivants : En-tte commun. Formulaire HTML denregistrement comprenant trois zones principales :

Pr. A. MESRAR

Page 3

La premire comporte les zones de saisie de texte pour le nom, le prnom, le dpartement et le-mail. La deuxime contient une zone de slection proposant le choix des sports existant dans la table sport. Cette liste est construite dynamiquement partir des slections des sports existants dans la base de donnes par les utilisateurs. Une seconde liste de slection permet lutilisateur de choisir son niveau. Les choix possibles sont dbutant , confirm , pro ou supporter . Une zone de saisie de texte et un bouton denvoi particulier permettent au visiteur dajouter un nouveau sport dans la table sil nest pas propos dans la liste. Aprs lenregistrement du nouveau sport, le visiteur est dirig vers la page dinscription mise jour avec ce nouveau sport. Le formulaire se termine par les habituels boutons denvoi et de rinitialisation. Lien vers la page daccueil. Script vrifiant lexistence de saisies dans les zones de texte et les listes de slection, enregistrant les donnes dans la base sportive et affichant lidentifiant gnr. La figure suivante illustre ce que pourrait tre le formulaire de la page dinscription.

La page de recherche

Nomme recherche.php, la page de recherche contient les lments suivants : En-tte commun. Formulaire de saisie contenant trois listes de slection : La premire contient la liste des sports existants. Elle est construite dynamiquement partir des donnes de la table sport, comme dans la page dinscription. La deuxime indique le niveau des pratiquants et comporte les mmes valeurs que dans le formulaire dinscription.

Pr. A. MESRAR

Page 4

La troisime contient la liste des dpartements dans lesquels il existe des personnes inscrites. Elle est construite dynamiquement partir des donnes de la table personne. Lien vers la page daccueil. Lien vers la page dinscription. Script traitant les informations saisies et affichant la liste des partenaires correspondants dans un tableau XHTML. Les donnes saisies sont raffiches dans le formulaire afin de faciliter une ventuelle nouvelle recherche de lutilisateur. Le formulaire de recherche peut ressembler celui illustr la figure suivante :

La base de donnes MySQL


Les contraintes respecter sont les suivantes : Les entits en prsence sont une personne et un sport. Une personne peut pratiquer un ou plusieurs sports. La cardinalit du cot de lentit personne est donc 1.N. Un sport peut tre pratiqu par une ou plusieurs personnes. La cardinalit du cot de lentit sport est donc galement 1.N. Ces entits sont relies par lassociation pratique, qui possde lattribut niveau. Le modle conceptuel de donnes, ou MCD, est illustr la figure comme suit :

En appliquant les rgles de normalisation avant dimplmenter la base de donnes. Comme indication lassociation pratique devient la table pratique. Sa cl primaire est la concatnation des cls primaires des tables quelle associe. Elle a de plus un attribut niveau.

Pr. A. MESRAR

Page 5

Projet 2 : Dictionnaire de citations interactif


Ce projet consiste crer un dictionnaire de citations littraires interactif en ligne. Chaque visiteur enrichir le contenu avec ses citations prfres, qui sont ensuite rendues accessibles tous. Le concept du site se rapproche de celui dun forum puisque les donnes ne sont pas figes.

Linterface
Pour crer une unit dans le site, chaque page doit incorporer les mmes en-tte et pied de page. Linterface comprend trois pages, la page daccueil, la page daffichage des rsultats et la page dinsertion.

La page daccueil

Nomme index.php, la page daccueil comporte, outre les lments dcoratifs laisss votre libre choix, les lments suivants : Bandeau contenant la citation du jour tire au sort dans la base et affiche lors de chaque connexion. Formulaire de recherche contenant une zone de saisie de texte dans laquelle le visiteur saisit un mot-cl de recherche dune citation. Il peut aussi prciser sa recherche en choisissant dans une liste de slection parmi les auteurs prsents dans la base. Cette liste est construite dynamiquement en interrogeant la base. Un dernier critre de slection est constitu dune seconde liste de slection permettant de choisir le sicle des citations, du XVIe au XXIe. Le critre de tri des rsultats se fait par auteur ou par sicle en fonction du choix effectu laide de boutons radio. Aucun de ces critres ntant obligatoire, chaque choix doit possder une valeur par dfaut consistant afficher lensemble des citations. Le script de traitement de ce formulaire se trouve sur la page daffichage des rsultats. Lien vers la page dinsertion de nouvelles citations.
La page daffichage des rsultats

Nomme affichecit.php, la page daffichage des rsultats contient les lments suivants : Script grant les saisies du formulaire. Ce script construit la requte SQL dynamiquement en fonction des choix oprs par le visiteur dans la page de recherche et gre labsence de mot-cl et de choix dans les listes de slection afin de ne pas crer de blocage du fait dune requte mal construite. Rsultats de la recherche effectue par un visiteur. Chaque citation est prsente dans une cellule de tableau HTML et est suivie du nom de lauteur et de son sicle. Le tri des citations se fait par sicle ou par nom dauteur selon le choix fait par le visiteur.
Pr. A. MESRAR Page 6

Lien vers la page daccueil. Lien vers la page dinsertion.

La page dinsertion

Nomme saisiecit.php, la page dinsertion comprend les lments suivants : Formulaire contenant deux zones de saisie de texte pour le nom et le prnom de lauteur, une liste de slection du sicle, une zone de saisie multiligne pour le texte de la citation, ainsi que les habituels boutons deffacement et denvoi. Script de traitement des donnes situ dans le fichier lui-mme, devant vrifier si lauteur existe dj dans la base puis insrer les donnes et afficher un avis dinsertion pour le visiteur. Lien vers la page daccueil.

La base de donnes MySQL


Nomme dico, la base de donnes doit rpondre au modle conceptuel de donnes reprsent la figure suivante.

Les contraintes sont les suivantes : Un auteur peut avoir crit plusieurs citations. Une citation donne ne peut tre loeuvre que dun seul auteur. 618

Projet 3 : Site e-Commerce


Les besoins du client
Le client dirige une PME qui vend des produits informatiques et vido. Vous devez lui crer un site de commerce en ligne pour vendre ses produits par correspondance. Son budget ne lui permettant pas de vous rmunrer en permanence pour maintenir le site, vous lui crez une interface Internet accs priv lui permettant dajouter ou denlever des produits dans la base de donnes ce qui va constituer le backoffice du site.

Pr. A. MESRAR

Page 7

Votre travail
Comme vous nallez pas rinventer le concept de commerce en ligne et partir de zro, vous vous inspirerez de ce qui existe dj. Il vous faudra en dgager les points essentiels et nen retenir que ce qui correspond au cas relativement simple de votre client. En particulier, le nombre darticles vendus par cette PME est relativement limit. Cela peut entraner des simplifications dans la structure de la base, comme le fait de ne pas crer de table spciale pour enregistrer le nom des marques des produits en magasin.

Fonctionnement du site
Le site rpond aux conditions suivantes : Dans la page daccueil, le client recherche un type de produit dans une des catgories informatique, vido et divers (pour les accessoires et consommables). Un tri par marque et par prix est propos pour laffichage des rsultats. Les rsultats de la recherche sont affichs en respectant le critre de tri. Chaque produit est suivi dun lien permettant sa slection. La slection dun produit entrane sa mise en panier. Aprs chaque slection, le client peut soit rechercher un autre produit, soit terminer sa commande. Dans ce dernier cas, lensemble de sa commande est affiche, et vous lui demandez ses coordonnes. Si le client nest pas encore enregistr, il saisit ses coordonnes compltes. Son adresse e-mail et un mot de passe lui serviront sidentifier par la suite. Il saisit galement le cas chant ladresse de livraison, qui peut tre diffrente de ladresse du client. Ces informations sont stockes laide de sessions pour tre transmises aux pages suivantes de la procdure dachat. Si le visiteur est dj client, il ne saisit que son e-mail et son mot de passe. Lauthenticit de ces informations est vrifie dans la base, et les coordonnes compltes du client sont rcupres. Ces coordonnes sont utilises pour remplir automatiquement un formulaire identique celui du visiteur non enregistr. Ces informations sont galement stockes laide de sessions. La phase de paiement par carte bancaire ntant pas ralisable sans une convention bancaire, vous vous contentez de demander la saisie dun numro de carte et dutiliser un algorithme de vrification du numro. Vous trouverez cet algorithme sur Internet en faisant une recherche partir du mot-cl cl de Algorithme de Luhn ou suivre le lien http://www.asp-magazine.com/article-44.html . Si le paiement est bien ralis, vous finalisez la transaction en enregistrant lensemble des informations dans les tables client, commande et ligne puis affichez le numro de commande destination du client dans un PDF. Pour finir, vous envoyez un e-mail de confirmation au client et au dpt du magasin charg de la livraison.

Pr. A. MESRAR

Page 8

La base de donnes MySQL


La base de donnes peut avoir comme modle conceptuel :

Bonne chance

Pr. A. MESRAR

Page 9

Você também pode gostar