Ça y est! Il est là, il est tout nouveau tout beau! Le tutoriel pour faire une galerie photo animée avec JQuery et qui utilise flickr pour héberger vos photos. Un bon petit mashup quoi! Pour voir ce que ça donne un peit test ici… Allé gogogogogo!
- Flickr
Bon, on veux héberger nos photos chez flickr. Donc…il vous faut un compte flickr (si ce n’est déjà fait!). Allé hop hop hop on s’inscrit. Si vous avez un compte yahoo! cela devrait être ok. L’ inscription ça c’est fait. Un petit mail de validation plus tard vous voila connecter sur votre compte flickr.
Pour la suite sur flickr je vous ai préparé un tutoriel vidéo. Je vous conseille de le suivre en entier, surtout pour la fin!
- Le php
Alors là on rentre dans le vif du sujet. Nous allons utiliser une classe php. Des notions de POO serait un plus mais si vous n’y connaissez rien en POO pas de problème vous pouvez continuer. Pour commencer vous devez >>télécharger la classe basée sur l’API de flickr<<. C’est elle qui va nous permettre d’afficher nos photos. Créez vous un dossier dans lequel vous décompressez l’archive. Créez y aussi un nouveau fichier php, par exemple : test-flickr.php.
Activer la librairie curl : Il faut à présent vérifier que votre serveur local soit configuré correctement. Ouvrez votre php.ini et trouvez le bloc qui contient toutes les extensions de php. Il faut ensuite décommenter (enlever le “;” au début de la ligne) la ligne suivante : extension=php_curl.dll. C’est presque fini. Allez dans votre dossier “php” dans easyPhp ou dans WAMP et copier les fichiers libeay32.dll et ssleay32.dll dans votre dossier windows/system32 ou windows/system suivant votre version de windows.
Place au code :
La première ligne va concerner l’inclusion de notre classe :
<?php
require(’flickr.php’);
Ensuite pour pouvoir utiliser l’API nous devons obtenir une deux clés (gratuites). C’est le cas pour la quasi-totalité des API. La première clé s’obtient en remplissant ce formulaire :
La seconde clé suivez le lien indiquez par la flèche rouge. Elle se situe sous la première clé et s’appelle clé de “secret partagé“. Nous pouvons maintenant nous connecter à flickr via l’API.
// Paramètres API :
$apiKey = ‘010e84b635468**********8d7a0f322′;
$apiSecret = ‘989******aa1418e’;
La variable $apiKey correspond à la première clé. Pas la peine de traduire pour la seconde ;-).
Vous vous souvenez des id que vous avez notés au début? Re-sortez les!
// Id du User :
$userId = ‘227*****@N07′;
//Id de l’album :
$albumId = ‘72157*********064′;
Nous y voilà. Nous allons instancier notre classe Flickr. C’est à dire que nous allons créer un objet à partir de notre classe. Voila comment ça se passe :
// Nouvelle instance de Flickr :
$flickr = new Flickr( $apiKey , $apiSecret );
Notre nouvel objet : $flickr. C’est lui qui gère la connexion avec l’API. On va créer une instance de notre album maintenant. Même combat sauf que la classe change de nom :
// Nouvelle instance de Album :
$album = new Album( $flickr , $albumId , $userId );
Enfin! Nous avons notre album. On comprend rapidement les arguments que l’on transmet lors de l’instance : notre objet $flickr pour se conecter, notre identifiant d’album $albumId et notre identifiant utilisateur $userId. On a donc ce qu’il nous faut pour accéder à nos photos : Notre objet $album.
Pour ce tutoriel j’utilise la méthode getPhotos(). C’est celle qui nous donne le plus de données utilisables. Pour le moment nous allons nous contenter d’afficher les miniatures de nos photos.
// Affiche les “thumbs” de toutes les photos de l’album :
foreach( $album->getPhotos() as $photo ) {
echo $photo['imgThumbs'] ;
}
?>
Le foreach permet d’assigner à la variable $photo chaque “ligne” ou “tuple” (pour reprendre un langage plus orienté base de données) renvoyés par la methode getPhotos(). Si vous voulez avoir le détail de ce que renvoi getPhotos() pour faire mumuz et modifier le script à votre guise, remplacez la ligne du echo par :
var_dump($photo);
Un petit test dans firefox votre navigateur favori et normalement vous devriez avoir toutes vos miniatures!
Un grand merci à scriptsphp pour cette classe et la doc fournie. D’ailleurs n’hésitez pas à aller faire un tour sur leur site pour voir toutes les méthodes qui existent.
La prochaine étape du tutoriel portera sur l’aspect animation de la gallerie histoire d’avoir un truc présentable!
Si vous avez fait des essais postez vos url’s en commentaire. Pareil si vous avez des bugs, problèmes remarques, etc etc n’hésitez surtout pas!! A très bientôt pour la suite!
EDIT : la suite est ici!
Autres articles intéressants :
- [css] bien comprendre les "floats"
- [gestion] liste d'outils de gestion de projet by smashing mag
- [adobe] version de démo de la suite CS4
- [design] [kuler] enfin de l'harmonie dans nos couleurs
- [google] actualité récente et nouveautés
Articles les plus actifs :
- [tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (2/2) (28)
- [tuto mashup] Google maps sur votre site : c'est possible! (version statique) (22)
- [tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (1/2) (19)
- [tuto web] cadre avec bordures extensibles valide xhtml/css (17)
- [tuto mashup] Galerie photo animée via Flickr : animer votre galerie (2/2) (17)
- [vu sur le net] #1 résumé (7)
- [tuto flex] hello world en flex: il y a un début à tout! (6)
- [vu sur le net] #2 dominante développement et entrepreneuriat (6)
- Qui suis-je? (4)
- [annonce] La patate "fuzz" sur le web!! (et j'aime pas olivier martinez :p) (4)















![[certification MySQL] du nouveau sur les dates !](http://antoine.guiral.info/wp-content/themes/Forte-fr/images/no-image.gif)










Je suis un passionné du monde du web et plus particulièrement du développement web. Principalement autodidacte je suis également en dernière année d'école d'ingénieur en informatique à 3IL. Je vous fait part dans ce blog de ma passion et de mes découvertes.
Salut !
Beau travail ! Ceci pourrait il marcher dans une page Wordpress ?
Je suis impatient de voir la suite.
Bye !