TP Site marchand

Commentaires

Transcription

TP Site marchand
IUT La Rochelle - Dépt R&T
Info 1ème année – Module I3
2009-2010
Laurent Demay
C. Sempé, J.L. Sabourin
TP programmation PHP
TP Site marchand
On considère un petit site marchant qui propose à la vente du matériel informatique réparti dans différentes catégories.
Le site est constitué de 4 pages php permettant d’effectuer une commande selon le schéma de navigation suivant :
selection.php
Bouton
Submit
- Choix d’une catégorie (1er formulaire)
- Affichage et sélection des articles
de la catégorie (2nd formulaire)
panier.php
Bouton
Submit
Lien
hypertexte
Bouton
Submit
Lien
hypertexte
Lien
hypertexte
commande.php
recapitulatif.php
Message de confirmation et
terminaison de la commande
Affichage et gestion du
« panier » de la commande.
(table html ou formulaire)
Bouton
Submit
Saisie des coordonnées du
client et validation de la
commande (formulaire)
Un fichier « articles.txt » représente la « base de donnée » des informations relatives aux catégories et aux articles.
Une visite sur le site consiste à préparer une commande en sélectionnant différents articles dans plusieurs catégories.
On peut continuer à préparer la commande en y rajoutant des articles jusqu’à ce que l’un décide de commander.
Le « panier » de la commande sera géré par un tableau php et enregistré dans une variable de session.
Le fichier articles.txt et les pages commandes.php et recapitulatif.php complètes vous sont fournis.
Vous aurez uniquement à compléter les 2 pages selection.php et panier.php
Fichier de la « base de donnée » des articles

Examinez le fichier articles.txt contenant les informations relatives aux articles selon la structure suivante :
La 1ère ligne du fichier contient au début un message fixé de choix de catégorie, puis les noms des catégories disponibles,
tous séparés par des caractères |
La 2ème ligne du fichier contient
les noms des caractéristiques

présentées ensuite sur toutes 
les autres lignes pour chaque 

article disponible

-- Choississez une catégorie --|Boitier|Carte mère|Processeur
Catégorie|Modèle|Marque|Descriptif|Prix
Boitier|NSK4000|Antec|Acier, mini tour, sans alim|40
Carte mère|P5N-D|Asus|Nvidia nForce 750i SLI, Socket 775|115
--------------------------Processeur|Opteron 2212|AMD|2.0 GHz, 2MO cache, Socket F|210
la première caractéristique
sera toujours par convention
la catégorie de l’article
la dernière caractéristique
sera toujours par convention
le prix de l’article
Page selection.php
1ère partie : variables de session
La page selection.php sert à la fois de page d’accueil du site et de sélection de différents articles d’une commande.
La première étape consiste à récupérer dans des structures de données en mémoire les informations contenues dans le fichier
articles.txt pour pouvoir y accéder rapidement à tout moment.

Complétez la 1ère partie de selection.php qui charge dans les variables $categories, $caracteristiques
et $articles les informations du fichier articles.txt et les sauvegarde ensuite dans la session.
Rq : pour lire une ligne dans le fichier identifié par $fichier, utilisez l’instruction :
$ligne = stream_get_line($fichier,255,"\r\n"); plutôt que
$ligne = fgets($fichier,255)
stream_get_line() est presque identique à fgets() hormis le fait qu'elle permet de préciser le délimiteur
de fin de ligne, et surtout qu’elle ne le retourne pas dans la chaine renvoyée.
2ème partie : sélection d’une catégorie d’articles
La page selection.php comportera deux formulaires :
- le premier pour le choix d’une catégorie d’articles
- le second pour l’affichage et la sélection d’articles
de cette catégorie choisie
Le premier formulaire sera composé d’une liste déroulante
présentant les différentes catégories disponibles.

Complétez la 2ème partie de selection.php qui affiche le formulaire et le menu déroulant de choix de la catégorie.
3ème partie : affichage des articles d’une catégorie
La suite de la page affichera un formulaire comprenant une case à cocher pour chaque article de catégorie choisie
Le formulaire sera présenté dans une table html avec une ligne d’en-tête pour aligner correctement les colonnes :
La 1ère ligne de la table html indique les caractéristiques
des articles de la catégorie sélectionnée
Le reste de la table html contient sur chaque ligne une
case à cocher et les détails d’un article
On peut cocher plusieurs cases pour sélectionner
plusieurs articles en même temps
Le bouton de validation permet de rajouter les articles
sélectionnés au panier, et ensuite de l’afficher
On peut également voir le panier sans rajouter d’articles

Complétez la 3ème partie de selection.php qui affiche le formulaire et la table html de sélection des articles.
Page panier.php
1ère partie : récupération des variables de session

Complétez la 1ère partie de panier.php qui récupère les valeurs des variables enregistrées dans la session
- On récupère les valeurs des variables enregistrées dans la session dans la page selection.php, et éventuellement
celle du « panier » $_SESSION['panier'] (qui existe si on est déjà passé avant sur la page panier.php).
2ème partie : ajout au panier des articles sélectionnés

Complétez la 2ème partie de panier.php qui ajoute au panier les articles sélectionnés dans selection.php
- Si l’on a sélectionné de nouveaux articles dans le formulaire de la page selection.php précédente, on rajoute
chacun d’entre eux en « fin » du tableau php $panier, puis on sauvegarde le panier modifié dans la session.
3ème partie : affichage du panier et calcul du total
La contenu du « panier » de la commande en cours sera présenté sous la forme suivante :
Les articles contenus dans le
panier sont présentés dans
une table html
Les nouveaux articles sont
insérés en fin du tableau php
$panier et apparaissent en
bas de la table html
Un article peut être inséré et
apparaitre plusieurs fois.
Calcul et affichage du total
Bouton Submit pour valider la commande
en enchainant sur la page commande.php
Lien hypertexte de retour vers accueil.php

Complétez la 3ème partie de panier.php qui affiche les articles contenus dans le panier et calcule le total associé
- Si le panier existe et n’est pas vide on initialise son coût total à 0 et on construit un formulaire pour l’afficher sous
la forme d’une table html dont la ligne d’en-tête est celle des noms des caractéristiques.
- On parcourt tous les articles enregistrés dans le panier pour afficher dans la table html leurs caractéristiques et pour
ajouter leurs prix au le coût total du panier.
- On affiche le total du panier, on ajoute le bouton Submit de validation et on sauvegarde le total dans la session.

Regardez le code des pages commande.php et recapitulatif.php puis testez la navigation dans le site.