400 likes | 500 Views
Projet Master 1 Informatique PHPGathering. Réalisé par Djamel Ouali & Frederic Degave. Plan. Présentation de PHPGathering Le travail réalisé Les problèmes rencontrés Les fonctionnalités à venir Conclusion. Présentation de PHPGathering. Présentation de PHPGathering. PHPGathering ?
E N D
Projet Master 1 InformatiquePHPGathering Réalisé par Djamel Ouali & Frederic Degave
Plan • Présentation de PHPGathering • Le travail réalisé • Les problèmes rencontrés • Les fonctionnalités à venir • Conclusion
Présentation de PHPGathering • PHPGathering ? - Site web permettant de partager des informations et medias entre utilisateurs. - Version initiale 2001 (usage personnel). - Développé avec les technologies du web comme HTML, PHP et java script associées à une base de donnée mySQL pour l’aspect dynamique.
Présentation de PHPGathering Accès au site par identification 2 types d’accès : • Accès administrateur ( gestion utilisateurs, gestion des répertoires…). • Accès utilisateur (gestion options personnels, visualisation photos, commentaires, changement de styles…).
Présentation de PHPGathering • Pourquoi le projet ? - utilisation personnelle : administrateur = Philippe Dumont utilisateurs = son entourage But : le rendre distribuable et utilisable par le plus grand nombre.
1. Une procédure d’installation 2. Une page d'accueil personnalisée 3. La page d’introduction 4. Un système de vote 5. Un système de tri 6. Un système de description des répertoires 7. Mise en place de l'internationalisation 8 . Ajout d’une feuille de styles Le travail réalisé
Le travail réalisé 1. Une procédure d’installation Pourquoi? • Problème pour configurer un serveur et une base de données.(non informaticien). • Facile et rapide à installer. • Disponible au plus grand nombre.
Le travail réalisé 1. Une procédure d’installation Comment? • Un formulaire à remplir. (cf. : phpBB) -configuration de la base de données(nom du serveur, nom de la base, administrateur de la base de données …). - configuration du compte administrateur(email, chemin du script, nom du site, nom d’utilisateur, mot de passe).
Le travail réalisé 2. Une page d’accueil personnalisée Pourquoi? - site différent selon l’ administrateur - accueil personnalisé permettant de décrire le site rapidement.
Le travail réalisé 2. Une page d’accueil personnaliséeComment? Pb : avant la phase d’identification - Fichier texte enregistré sur le serveur protégé en écriture (chmod) modifiable uniquement par l’administrateur.
Le travail réalisé 3. La page d’introduction Pourquoi? - Système déjà présent dans la version initiale mais en « dur » dans le code. il fallait changer le système pour éviter de réécrire dans le code.
Le travail réalisé 3. La page d’introduction Comment? - Création d’une table intro(ID,Titre, Date, Texte) • Formulaire dans la page d’introduction uniquement visible par l’administrateur.
Le travail réalisé 4. Un système de vote Pourquoi? • Système de commentaire déjà en place. • Rendre le site encore plus interactif pour l’ utilisateur.
Le travail réalisé 4. Un système de vote Comment? • Cookies ? (non) • Nouvelles Tables ? (oui) ajout de 2 nouvelles tables : Table Vote : photos qui ont au moins 1 vote Vote = (IdentifiantRepertoire,NomPhoto,NbreVote,Moyenne) Table Votes : liste des votes (pour éviter de voter plusieurs fois) Votes =(IdentifiantUtilisateur,IdentifiantRepertoire,NomPhoto)
Le travail réalisé 5. Un système de tri Pourquoi? • Permettre une meilleur visualisation du contenu. • Accès plus rapide aux photos intéressantes.
Le travail réalisé 5. Un système de tri Comment? • Utilisation de la fonction PHP array_multisort() • Tri par Nom • Tri par Moyenne des votes • Tri par Nombre de commentaires • Tri par Type de médias
Le travail réalisé 6. Un système de description des répertoires Pourquoi? • Nom associé au répertoire pas toujours significatif . • Difficulté de connaître le contenu du répertoire sans l’ouvrir
Le travail réalisé 6. Un système de description des répertoires Comment? • Modification de la table « rep » • Ajout des champs: « Descrip » (texte contenant la description du répertoire) « ImageDefault » (image représentant le répertoire)
Le travail réalisé 7. Mise en place de l’internationalisation Pourquoi? • Utilisable par un maximum de personne • Utilisable par des non francophones (vision internationale)
Le travail réalisé 7. Mise en place de l’internationalisation Comment? • Mise en place d un répertoire « language » • 1 sous répertoire par langue( avec le nom de la langue) et 1 fichier de même nom. • Le fichier contient 1 tableau $lg avec l’ensemble des mots du site. • Modification du code en remplaçant les mots par le bon $lg[…]
Le travail réalisé 8. Ajout d’une feuille de style (dream)
Les problèmes rencontrés • 1. La compréhension du code source. • 2. Les problèmes d'hébergement. • 3. Les problèmes de navigateurs.
Les problèmes rencontrés • 1. La compréhension du code source. Un projet déjà bien entamé ( ≈10 000 lignes de codes). Le php, le css & le java-script: nouveaux langages...
Les problèmes rencontrés • 2. Les problèmes d'hébergement. Problème avec les hébergeurs gratuits. - Problèmes avec les extensions de php. - Problèmes spécifiques à chaque hébergeur. Solution: EasyPhp ;)
Les problèmes rencontrés • 3. Les problèmes de navigateurs. Plusieurs navigateurs, UN code source. - Mozilla, Internet Explorer, Opera ... Les feuilles de styles: Des fonctions utilisables chez les uns mais pas chez les autres: Solution: Plusieurs feuilles de styles ou utiliser les fonctions communes à tous les navigateurs.
Les fonctionnalités à venir • L'utilisation d'autres types de base de données. • L'internationalisation. • La gestion des droits utilisateurs. • De nouvelles fonctionnalités… • Un système d avatar • Un système de messages privés entre utilisateurs. • Un système d'upload des médias. • …
Conclusion • Valider nos connaissances sur les technologies du Web. • Difficulté reprendre un projet existant. • Necessité du logiciel libre (phpBB) • L'importance d'un code-source propre et clair.