Photomaton

Réalisez une galerie de photos type photomaton.

Page d'accueil

la page d'accueil est un formulaire permettant d'envoyer une image et un texte, facile.

Bonus : pour ceux qui veulent tenter un peu de javascript, pendant que l'image d'upload et que la page suivante charge, mettez un petit loader

Page de traitement

La page de traitement, peut s'appeler par exemple make.php ou process.php, elle n'a pas de template, c'est à dire qu'elle n'a pas de vue HTML associée. Une fois qu'elle aura effectué tous ses traitements, elle va rediriger vers la page de visualisation de l'image transformée.

Quand le formulaire est envoyé,

  • vérifiez su le fichier est une image (function image_test($file))
  • uploadez le fichier (function image_upload($file))
  • modifiez l'image pour la transformer en polaroïd ou en photomaton (function image_transform($file,$legend))
  • enregistrez l'image dans le dossier /uploads/ (function image_save($im))
  • ajoutez l'image et sa référence dans la base de données (function gallery_add($filename,$legend))

Si tout s'est bien déroulé, redirigez le navigateur vers la page picture.php?id=XX où XX est le numéro de l'id que vous venez d'insérer.

Pour récupérer l'id de l'image que vous venez d'enregistrer dans mysql, vous devez utiliser mysql_insert_id.

Pour rediriger la page, vous devez utiliser header avec une syntaxe du genre

header('Location: picture.php?id=19');

Astuce : Au début au lieu d'utiliser le header, faites un lien comme ceci

echo '<a href="picture.php?id=19">la suite</a>'; 

Comme ça, s'il y a des erreurs dans la page vous les verrez s'afficher au lieu de passer à la page d'après.

Page de visualisation d'une image

La page picture.php visualise l'image en fonction de l'id de base de données.

Pour cette page, il suffit d'afficher les infos de l'image (function gallery_view($id))

Page de galerie

La page gallery.php liste toutes les images (function gallery_all()) et les lie vers les pages picture.php?id=xx

ressources/php/td11.txt · Last modified: 2013/06/16 22:51 (external edit)
 
 
Creative Commons License Powered by PHP Valid XHTML 1.0 April