Pendant ce deuxième semestre, nous allons réaliser un site de e-commerce au design et aux fonctionnalités les plus proches possibles d'un vrai site professionnel.
Ceux qui réalisent un travail de qualité pourront enrichir leur portefeuille de compétences et leur CV avec ce site.
Ce travail va nous permettre d'aborder de nouvelles connaissances en PHP, toujours plus pointues car spécifiques à l'option SLAM. Je vous apprendrai notamment :
Votre site devra impémenter en BackOffice (interface pour le marchand) les fonctionnalités suivantes :
Votre site devra impémenter en FrontOffice (interface pour les clients) les fonctionnalités suivantes :
Les clients ont la possibilité de s'inscrire (créer un compte client)
Les clients et les administrateurs ont la possibilié de s'authentifier (voir le TP Authentification)
Dans un vrai site marchand, l'internaute n'est pas obligé de s'authentifier avant la validation du panier. Il va falloir trouver un mécanisme pour qu'il puisse créer un panier sans avoir de compte client (il n'a pas d'ID !)
Pour le design de votre site, prenez comme base le TP CSS (questions 4, 5, 6) où vous êtes censé avoir fait le design de vos rêve. Vous devrez certainement l'adapter pour lui donner un aspect plus professionnel.
Le site devra être validé en HTML 5 (Validateur d W3C)
Pour vous faciliter le travail et faire une présentation unifiée dans toutes les pages du site, vous repecterez strictement le principe du TP Include, avec l'inclusion de debut_pages.php
et fin_pages.php
dans toutes les pages du site.
Mettez votre site en ligne, soignez son référencement, vérifiez le classement de votre site par Google
Si vous le souhaitez, je vous apprendrai à intégrer le paiement Paypal dans votre site (je l'ai déjà fait pour my-dogs)
La première étape consiste à définir la mise en page et le design de votre site, faites-le et postez une capture d'écran ici (n'hésitez pas à mettre à jour cette réponse au fur et à mesure de la maturation de votre site).
Créez la base de données grâce à l'outil sur www.btsinfo.local.
À priori vous devriez avoir besoin des tables suivantes :
Mettez ici la liste des tables et des champs de votre site. Faites évoluer cette réponse au fur et à mesure de la maturation de votre site.
Pendant la maturation de votre site, vos tables vont beaucoup évoluer, vous allez ajouter des tas de champs.
A chaque champ rajouté, votre site (et plus précisément vos requêtes SQL INSERT INTO ne vont plus marcher, sauf si vous précisez la liste de champs :
INSERT INTO nom-de-la-table (liste des champs) VALUES (...);
Je vous demande de respecter strictement ce principe (croyez-moi, c'est pour votre bien !).
Lancez-vous dans la réalisation du site. Vous pouvez commencer par exemple par la partie BackOffice qui permet d'ajouter des catégories et d'ajouter des produits.
Remplissez ces réponses au fur et à mesure de l'évolution de votre site marchand.
Qu'avez-vous ajouté comme table dans votre site, en plus des tables listées au paragraphe précédent (utilisateur, catégorie, produit, commande, détail_comande, consulte) et dans quel but ?
Qu'avez-vous ajouté comme fonctionnalités originales ou poussées ?
Chaque jeudi, prenez dix minutes pour noter ce que vous avez fait pendant la séance de 4 heures.