Je vais faire une galerie photo avec mon frère car notre système actuel ne sous satisfait pas. Voici les besoins initiaux qui vont évoluer. lot 1, lot 2, lot 3, lot 4
But
Envoyer des photos sur internet pour partager une galerie de photo avec un ensemble restreint de personnes.
  1. Fonctionalités demandées
    1. Sécurité de l'accès (login/mot de passe).
    2. Affichage par date du cliché (toute photo doit avoir une date).
    3. Affichage par utilisateur (toute photo doit avoir un auteur).
    4. Affichage par tag.
    5. Editer les tags d'une photo.
    6. Requêtage simple sur les utilisateurs et/ou un ensemble de tags.
    7. Gestion des miniatures.
  2. Contraintes techniques
    1. Toutes les méta-données dans les photos.
    2. Une résolution maximale imposée pour les photos envoyées.
Solutions
Une première maquette semi-dynamique
  • sécurité par 'htaccess' - 1.1..
  • date gérée par la section 'EXIF.DateTimeOriginal' ou 'EXIF.DateTimeDigitized' des données Exif - 1.2..
  • propriétaire géré par la section 'IFD0.Author' ou 'WINXP.Author' des données Exif - 1.3..
  • tags gérés par la section 'IFD0.Keywords' ou 'WINXP.Keywords' des données Exif - 1.4..
  • utilisation d'une librairie php ou du code maison pour la lecture/édition des données Exif - 1.5..
  • si on utilise pas de sgbd, on risque de devoir trop parser les photos sans arrêts; on peut envisager un sgbd pour faciliter le requêtage - une table photo avec l'identifiant, une table tag avec le nom du tag et une table de relation nn pour faire le lien entre photo et tag - 1.6., 2.1.
  • vérifications au premier accès à une photo (photo nouvellement uploadée) : auteur - 1.3., date - 1.2., tags - 1.3., utilisation de la miniature EXIF - 2.1., 2.2.).

A faire:

  • choix des tags que windows met à jour:
    • modifier dans l'interface de windows une photo et visualiser le résultat après lecture des données exif par php.[FAIT voir ci dessus les tags choisis.]
    • modifier via php le tag et observer le résultat dans Windows.
  • choix de la librairie : la librairie open source qui fonctionne est pel. Comme elle n'est pas compatible php4.4.3, l'étudier et créer du code maison pour la lecture/édition.
Références