Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Flickr e PHP: interagire con le API utilizzando la classe phpFlickr

Articolo scritto da Claudio Garau
Pagina 1 di 5

Flickr è un servizio messo a disposizione dal gruppo Yahoo!, lo stesso che fornisce il noto motore di ricerca, per l'upload e la condivisione di immagini e video, in particolare di fotografie digitali; Flickr funziona in modo semplice: ci si iscrive, si uploadano le immagini e si decide se condividerle con tutti, soltanto con alcuni contatti o se renderle private.

Per interagire con Flickr tramite il proprio sito Web è disponibile un'apposita classe, denominata phpFlickr, rilasciata sotto licenza Open Source e scaricabile da questa pagina, che mette a disposizione i metodi e le proprietà necessarie per interfacciarsi al servizio.

(L'articolo continua più sotto...)

Prima di passare al codice, è importante sottolineare che lo sviluppatore che intende utilizzare phpFlickr, deve possedere un dato che potrà essere recuperato dall'App Garden di Flickr, parliamo dell'API key che permette all'utilizzatore di autenticare le proprie applicazioni al servizio.

Visualizzare le immagini di un utente

Una volta recuperata l'API Key sarà possibile utilizzarla per l'istanza della classe e per la creazione dell'oggetto phpFlickr; il codice seguente mostra come sia possibile inserire in una pagina del proprio sito Web alcune immagini prelevate direttamente da quelle conservate all'interno del proprio spazio su Flickr:

<?php
// inclusione della classe phpFlickr
@include("phpFlickr/phpFlickr.php");
// istanza della classe e creazione dell'oggetto phpFlickr
// l'argomento è l'API key di Flickr
$istanza = new phpFlickr("LATUAAPIKEY");
// inizializzazione del contatore per le immagini 
$mul = 0;
// estrazione dell'id corrispondente al nome utente
$username = $istanza->people_findByUsername('ILTUONOMEUTENTE');
// estrazione dei link relativi alle immagini
$collegamento = $istanza->urls_getUserPhotos($username['id']);
// definizione del numero di immagini da visualizzare ("20")
$images = $istanza->people_getPublicPhotos($username['id'], NULL, NULL, 20);
// ciclo di visualizzazione delle immagini
foreach ((array)$images['photos']['photo'] as $image) {
  // link all'immagine originale
  echo "<a href=\"".$collegamento.$image['id']."\">";
  echo "<img border=\"0\" alt=\"".$image['title']."\" src=\"".$istanza->buildPhotoURL($image,"Square")."\">";
  echo "</a>\n";
  // incremento del contatore
  $mul++;
  // numero di immagini per ciascuna riga ("3")
  if ($mul % 3 == 0) {
    echo "<br>\n";
  } 
}
?>
Per poter visualizzare le immagini del proprio account, è necessario che queste siano visibili pubblicamente; come è possibile notare nell'esempio proposto, la prima operazione da effettuare sarà quella relativa all'inclusione del file di classe, fatto questo, sarà necessario passare la propria API Key all'istanza della classe stessa, al fine di creare un oggetto phpFlickr.

La fase successiva prevede di passare al metodo people_findByUsername(), il nome dell'utente del quale si vogliono mostrare le immagini, in questo modo sarà possibile recuperarne l'id, cioè l'identificativo univoco dell'account in Flickr.

L'id verrà utilizzato per l'estrazione delle immagini, l'applicazione utilizza infatti il metodo people_getPublicPhotos() per raccogliere i file relativi all'identificatore estratto e renderli disponibili per la visualizzazione nella quantità stabilita dal numero passato ad esso come ultimo argomento (in questo caso "20" immagini); sarà così disponibile un array che potrà essere ciclato per la creazione di una galleria sul modello della seguente:

Immagini dell'utente

Da notare l'utilizzo del metodo buildPhotoURL() che consente di recuperare il percorso interno a Flickr di ciascuna immagine.

Corsi
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso MySQLCorso MySQL
Gestione del database open-source. A partire da 49 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. A partire da 49 €.
Vedi anche...
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122