Applicazioni su Facebook in php parte seconda

Tutorial -> Facebook

Benvenuti alla seconda puntata della serie: programmare applicazioni per Facebook in Php e vivere felici. Nella prima puntata abbiamo visto come realizzare un applicazione per facebook in php
In questo articolo invece vedremo come realizzare una applicazione, sempre scritta in php, che giri "dentro" le pagine di Facebook. Se infatti nella prima lezione abbiamo visto come utilizzare alcuni metodi delle api di Facebook oggi faremo un passo in più: impareremo a sfruttare il linguaggio di tag di Facebook anche detto FBML. Nell'applicazione d'esempio avevamo infatti trovato questa parte di codice:

echo "Hello, < fb:name uid="$user_id" useyou="false" >!< /fb:name >";

che, visualizzando sul nostro indirizzo esterno di hosting non produceva alcun risultato apprezzabile. Questi tipi di tag risulteranno invece utilissimi quando li utilizzeremo nelle nostre applicazioni che gireranno dentro la piattaforma di social network. Questo in particolare ci restituisce il nome dell'utente "passandogli" il suo id come argomento ( uid="$user_id" )

Come inserire il nostro codice php dentro Facebook

Facebook ci fornisce un modo molto semplice per integrare i nostri contenuti con le sue pagine. Entriamo nella schermata della nostra applicazione dalla pagina di riepilogo del gruppo di sviluppatori e clicchiamo su Modifica impostazioni

Dal menù sulla sinistra selezioniamo la voce Modelli e prendiamo in esame il primo campo che dobbiamo inserire: Canvas Page Url dentro Required URLs. Qui scegliamo l'indirizzo al quale la nostra applicazione sarà raggiungibile: avrà quindi un indirizzo del tipo: http://apps.facebook.com/< nome_scelto >/
Immediatamente sotto vediamo Canvas Callback URL che deve contenere l'indirizzo fisico dove sono presenti le nostre pagina php (e che nella predecente lezione avevamo già settato a http://www.nomedelsito.it/cartella/)

IFrame o FBML? Questo è il problema

Fatto questo andiamo su Canvas Settings e modifichiamo i campi secondo le nostre esigenze.

L'unico campo che prendiamo qui in esame è Metodo di restituzione che può assumere i valori FBML o IFrame
. Facebook offre due metodi per integrare le nostre pagine php nella sua interfaccia. La prima che prendiamo in esame è IFrame. Questa metodologia non fa altro che creare un tag iframe (appunto) e richiamare la nostra pagina in questo tag. La nostra pagina è quindi di fatto una struttura completamente esterna alla piattaforma Facebook e non può utilizzare i tag FBML. In pratica l'unico vantaggio che abbiamo scegliendo questa opzione è quello di poter accedere alla nostra applicazione dall'indirizzo abbreviato http://apps.facebook.com/< nome_scelto >/.
L'opzione FBML invece ci catapulta completamente dentro il mondo di Facebook. Possiamo infatti utilizzare i tag proprietari del linguaggio FBML: possiamo inserire pulsanti per invitare amici, per interagire con i profili degli utenti e molte altre cose ancora. Utilizzando questa opzione i contenuti della nostra applicazione saranno direttamente integrati dentro la pagina di Facebook, quindi non dovremo eliminare i nostri tag < head > e < body > inserendo direttamente il corpo della pagina. L'inserimento di questi tag è infatti possibile quando selezioniamo l'opzione IFrame, ma genera degli errori a video nel caso scegliamo FBML
Per fare una prova prendiamo l'applicazione generata nel precedente articolo e settiamo Canvas Page URL con l'indirizzo che vogliamo e Metodo di Restituzione a FBML. Clicchiamo poi su Salva modifiche e andiamo all'indirizzo che abbiamo appena deciso per la nostra applicazione.
Come per magia si dovrebbe vedere la nostra cara applicazione di prova che questa volta correttamente visualizza il nostro nome grazie al tag < fb:name >. Se invece qualcosa è andato storto, forse mi sono spiegato male (o forse voi siete delle schiappe :) ), quindi contattatemi;)