-
Notifications
You must be signed in to change notification settings - Fork 1
imane-ihy/aide-memoire
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
HEDDADJ Steven - IHYATEN Imane * Présentation: Le site est un aide-mémoire qui permet à un utilisateur de créer un mémo qu'il peut partager ou non. Lorsqu'il ouvre le site il peut se connecter ou s'inscrire. Une fois connecté, l'utilisateur peut écrire un memo, voir ses memos, les supprimer, les modifier ou voir les memos qui ont été partagé avec lui. L'utilisateur qui veut ajouter un memos peut le partagé avec au moins 2 personnes ou ne pas le partager. A chaque étape, un message s'affiche sur le terminal. * Mode d'emploi: Préparation de la base de données: -> Modifier les lignes 9 (host), 10 (user) et 11 (password) si nécessaire -> Mettre la ligne 8 (database) en commentaire, lancer le projet comme ci-dessous, enlever le commentaire et relancer pour créer la base de données. Le projet peut être lancé en exécutant l'une des commandes suivantes: node main.js ou nodemon main.js Pages: Toutes ces pages sont dans un fichier "views". - "accueil.ejs": Page sur laquelle le site s'ouvre. L'utilisateur peut soit se connecter, soit s'inscrire. - "inscription.ejs": Page grâce à laquelle l'utilisateur peut s'inscrire. Il peut pour cela entrer un pseudo, un mot de passe (et le confirmer), ainsi qu'une adresse mail. - "connexion.ejs": Page qui permet la connexion de l'utilisateur avec son pseudo et son mot de passe. - "accueilConnecte.ejs": Page sur laquelle l'utilisateur est redirigé une fois connecté. Il peut écrire un nouveau memo, voir ses memos ou se déconnecter. Ces options sont disponibles sur toutes les pages lorsque celui-ci est conecté. - "memo.ejs": Page où l'utilisateur peut écrire son memo. Il doit lui donner un titre et s'il le souhaite il peut partager son memo avec 2 personnes minimum ou ne pas le faire. Cette page n'est accessible que si l'utilisateur est connecté sinon il est redirigé vers la page de connexion. - "mesMemos.ejs": Page où l'utilisateur a accès à ses memos ainsi qu'aux memos qui ont été partagé avec lui. Il peut supprimer ou modifier ses memos depuis cette page. En revanche, les memos partagés ne sont pas modifiables. Cette page n'est accessible que si l'utilisateur est connecté sinon il est redirigé vers la page de connexion. - "modifierMemo.ejs": Page depuis laquelle l'utilisateur peut modifier son memo. Langages: - Embedded JavaScript: Les pages sont écrites dans ce langage pour pouvoir inclure et interpréter du Javascript aux fichiers. - MySQL: Nous avons créé une base de données "aide_memoire" qui comporte 3 tables. Une table "utilisateur" qui regroupe les informations concernant l'utilisateur, c'est-à-dire son pseudo (pseudo) qui est unique, son mot de passe (mdp) qui est haché, son adresse mail (mail) et un identifiant (id_utilisateur clé primaire) qui est un entier auto-incrémenté. Une table "memo" qui contient le titre (titre) du memo, son contenu (memo) ainsi que l'identifiant du memo (id_memo clé primaire) représenter par un entier auto-incrémenté et l'identifiant de l'utilisateur (id_utilisateur clé étrangère faisant référence à utilisateur(id_utilisateur)). Une table "partage" qui permet de gérer le partage des memos avec l'identifiant du memo partagé (memo clé étrangère faisant référence à memo(id_memo)) et celui de l'utilisateur avec lequel ce memo est partagé (utilisateur clé étrangère faisant référence à utilisateur (id_utilisateur)). - CSS: Nous avons préféré faire un seule fichier regroupant tout le style du site (style.css). - JavaScript (jQuery): Peu utilisé seulement dans "connexion.ejs" et "inscription.ejs" Modules: - express: Utilisé pour le serveur (serv) - express-session: Utilisé pour la création de session, après avoir utilisé avec cookie-session - mysql: Utilisé pour la base de données - body-parser: Utilisé pour récupérer les informations des formulaires. - password-hash: Utilisé pour hacher le mot de passe - ejs: Utilisé pour mélanger du HTML et du JavaScript plus facilement.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published