In quest’ultima settimana ho studiato le api di facebook e ho incominciato a giocherellare creando qualche applicazione. Ho notato però, che in rete non c’è molta documentazione, specialmente in italiano. Per realizzare un’applicazione per facebook abbiamo bisogno di :
- Un account su facebook
- L’applicazione per lo sviluppo di facebook (Facebook Developer).
Per installarla fare click su ‘Add Facebook Developer Application’ - Un server con php5 Se non lo abbiamo, si può utilizzare un server gratuito
- La libreria per php5 di facebook.
UPDATE : Versione aggiornata dell’articolo su : Come creare un applicazione per FaceBook (senza librerie php)
Una volta soddisfatti questi requisiti possiamo iniziare :
- Aprire l’applicazione ‘Facebook Developer’ e cliccare su ‘Setup New Application’
- Quindi nella nuova schermata aggiungere il nome dell’applicazione (1) , accettare i termini del contratto e cliccare sul link ‘Optional Fields’ (2) per aprire un nuovo pannello per inserire il resto delle informazioni
- Nella sezione ‘Optional Fields’ inserire
1 ) l’indirizzo di callback , ovvero l’indirizzo dove risiede la nostra applicazione, qualcosa tipo www.miosito.it/nomeapplicazione/
2) il nome che identifica l’applicazione in facebook (può coincidere con quello della tua applicazione, se non è stato già assegnato)
3) Selezionare some tipo di applicazione ‘Web Site’
4) Selezionare ‘YES’ per indicare a Facebook, che la tua applicazione può essere aggiunta dagli utenti.
Quest’ultima opzione aprirà una nuova sezione da riempire
- Nella nuova sezione riempire solo i seguenti campi:
1)Inserire il link a cui gli utenti verranno indirizzati dopo aver aggiunto la nostra applicazione ovvero : http://apps.facebook.com/nomeapplicazione
2)Inserire un testo che vogliamo venga visualizzato nel profilo utente se non è specificato dalla nostra applicazione (es. ‘Ciao Mondo’)
3)Inserire il link della nostra applicazione su facebook ovvero : http://apps.facebook.com/nomeapplicazione
4) lasciamo gli altri campi invariati e clicchiamo su ‘Submit’
A questo punto la nostra applicazione è stata creata e FaceBook gli assegnato dei valori che dobbiamo segnarci, perchè dobbiamo inserirli nel nostro programmino presente sul nostro server. I valori sono la chiave dell’applicazione (API KEY) ed un numero segreto (SECRET). Per vedere questi valori andare nella lista delle ‘mie applicazioni‘
Ora dobbiamo creare la nostra applicazione vera e propria, per farlo scarichiamo la libreria php5 per facebook , e copiamo il file facebook.php sul nostro sito e creiamo due file : ‘appinclude.php’ e ‘index.php‘
appinclude.php
1 2 3 4 5 6 7 8 |
<?php require_once 'facebook.php'; $appapikey = "CHIAVE DELL'APPLICAZIONE"; $appsecret = 'NUMERO SEGRETO'; $facebook = new Facebook($appapikey, $appsecret); $user = $facebook->require_login(); $appcallbackurl = "http://www.miosito.it/nomeapplicazione/"; ?> |
ovviamente inseriamo i valori della chiave dell’applicazione (API KEY), il numero segreto (SECRET) e l’indirizzo corretto del nostro sito.
index.php
1 2 3 4 |
<?php require_once 'appinclude.php'; echo 'Il tuo ID utente è :'.$user; ?> |
Il nucleo della nostra applicazione e tutto nel file index.php, per ora ci limitiamo a scrivere un breve messagio, nei successivi articoli, vedremo di creare qualcosa di più interessante.
Ora la nostra applicazione è identificata da due indirizzi:
- http://www.miosito.it/nomeapplicazione/ : indrizzo di callback (che viene chiamato da facebook direttamente)
- http://apps.facebook.com/nomeapplicazione/ : indirizzo del applicazione su facebook (canvas url)
Per provarla utilizziamo uno dei due indirizzi ed aggiungiamo l’applicazione al nostro account facebook.
Se tutto è andato bene, dovremmo vedere ‘ciao ‘ seguito dal nostro nome, mentre se andiamo nel nostro profilo vi sarà una nuova sezione ‘nomeapplicazione’ con all’interno il messaggio ‘Ciao Mondo’.
Attenzione: Nel copiare ed incollare il codice, state attenti agli apici!
Link : Gennaro Varriale su Facebook:
j’adore
nn ho capito un accidente
mi dispiace..prossimamente ci sarà una guida più aggiornata, forse la troverai più utile ;)
mi esce questa scrtitta quando inserisco api key e secret
Uh-oh – this isn’t write keys dude
uffff ke nerviiii
vi prego rispondete
Evidentemente stai utilizzando un quiz generator, non era questo l’argomento trattato nell’articolo. Comunque è un problema dell’applicazione che stai utlizzando(quiz). Forse èun problema momeentaneo, nel caso contattali sulla loro pagina ufficiale.
AAAAIIIIUUUUUUUUUTTTTTTTTTTTOOOOOOOOO
è tutto il giorno ke cerco di inserire un ap in facebook ma primo non risco a installare il developer ap e secondo quando faccio tutti i passaggi mi dice ke l’api key è sbagliato…..ufffffffffffff help me
grazie milleeee
Ciao, sono io.
Ti volevo chiedere: perché il codice di cui sopra mi restituisce questo?
Fatal error: Call to undefined method Facebook::require_login() in /home/mhd-01/www.sitoscuratononfacciospam.com/htdocs/app/appinclude.php on line 6
non è presente o non caricata la libreria facebook.php, assicurati di farlo.
Ciao non riesco a creare un applicazione
Enrico metto i file facebook.php,index.php appinclude.php nella mi cartella ma non mi funge l applicazione
Sblagio qualche passaggio
Grazie
Che guida… peccato che nel pacchetto libreria questo file ‘facebookapi_php5_restlib.php’ non c’è
Infatti, la libreria è cambiata. Ora tutto è incluso in un solo file facebook.php
Il link per il download della libreria php5 è rotto! :-(
Ripristinato.
http://github.com/facebook/php-sdk/archives/master
Vorrei che quando l’utente usa la mia applicazione, questa scrivesse nella sua bacheca il tipico messaggio “Tizio ha giocato a … clicca qui per giocare anche tu”.
Ricordo che la funzione da usare era:
$facebook->api_client->feed_publishUserAction();
Ma so che ci vuole un parametro da passare, che si ricava attivando dei template, non ricordo bene. Inoltre tale funzione so che è deprecata.
Cosa dovrei fare per far scrivere la mia applicazione nella bacheca dell’utente?
feed_publishUserAction() e deprecata puoi usare stream_publish da php o Facebook.streamPublish da javascript.
es. $facebook->api_client->stream_publish($message)
E non bisogna passare quale parametro tipo ID?
feed_publishUserAction() ricordo che ne richiedeva uno.
Mi dice che la funzione non è definita.
Penso perché ho un sdk vecchio.
Dove trovo quello nuovo?
Ho trovato questo sito: http://github.com/facebook/php-sdk
Ma non ho capito se basta scaricare il file facebook.php
Ho provato ad usare quella funzione ma da errore, probabilmente perché ho l’sdk dell’anno scorso.
Ho scaricato quello aggiornato che ho trovato su http://github.com/facebook/php-sdk ma non ho capito se sia sufficiente scaricare il file facebook.php nella cartella src (il resto non sembra servire se non per fare esempi).
In ogni caso, col nuovo sdk, mi da problemi la funzione require_login che uso anche per ricavare l’userID.
Infine, nel caso in cui riuscissi a fare funzionare strem_publish, che tipo di testo devo passare per far si che venga considerato un link?
Prima si utilizzavano i template che andavano creati nel pannello di controllo, ora avviene tramite codice.
La riga che ti ho passato serve solo per un messaggio di testo come da te richiesto. Per un uso più approfondito ti rimando alla documentazione ufficiale, in pratica c’è un parametro json in cui vi sono i vari dati (image/video/ecc..)
La libreria su github è la più recente. Devi caricare tutta la cartella.
Ma nelle altre cartelle mi pare non ci siano files utili, ma ti prendo in parola :-)
Facendo l’upload di tutta la cartella dovrebbe funzionare allora, ora provo e vediamo che succede.
Ma una guida che non risalga al 15-18 non si trova in giro?
Quegli screenshot risalgono al facebook del secolo scorso.
evidentemente è nel secolo scorso che ho realizzato la guida ;P
Le schermate sono cambiate, ma i dati sono gli stessi, al momento non ritengo necessario un’aggiornamento.
Ma se l’applicazione appare a sinistra insieme alle altre.Tipo budypoke, Non può interagire con l’utente che la visualizza?
Cosa intendi precisamente?
Ma uno che non è esperto di php puo’ creare una applicazione su facebook?
Un’applicazione facebook la puoi realizzare in vari linguaggi (php,ruby,flash.ecc..).
Non bisogna essere esperti, ma a seconda del tipo di applicazione è necessario una determinta padronanza del linguaggio.
SEI UN MITO!!
FINALMENTE CI SONO RIUSCITO
OOOOOOOOOOOOOOOOOOOOOOOOOOO
BRAVO
ciao nn mi e’ chiaro cosa sono i php … e poi ho delle difficolta ad aggiungere questa applicazione sul mio profilo
Ciao , php è un linguaggio con cui si può costruire un’applicazione fb.
Nel mess precedente credo che i tag html siano stati tagliati, comunque, per capirci:
fb:name uid=\”$user_id\” useyou=\”false\”
non ti preoccupare era chiato il tag che hai utilizzato, anche se non è comparso
Salve, ho provato a creare la mia prima applicazione, più che altro il primo test e mi è sorto subito il primo dubbio. Premetto che conosco bene php ma non le funzioni della libreria.
Sei io uso il codice da te descritto:
echo ‘Il tuo ID utente è :’.$user_id.”;
Mi viene visualizzato il mio numero ID e non il nickname.
Leggendo su un’altra guida ho provato questo sistema:
echo “Il tuo ID utente è : !”;
ovvero l’uso del tag “fb”.
In questo modo però non mi viene visualizzato nulla perché da quanto ho capito “fb” è un tag di facebook e non funziona la di fuori di esso. Ma io l’applicazione la eseguo su Facebook all’indirizzo:
http://apps.facebook.com/wilez_prova/
dunque in teoria dovrebbe funzionare perché mi trovo all’interno del social network… perchè non mi funge?
L’obiettivo dell’articolo era quello di fare un primo passo verso la programmazione FB (indipendentemente che di utilizzi FBML o IFRAME ) per questo visualizzo solo l’id e non l’info dell’utente.
Per fare ciò va bene utilizzare tag fbml, però mi raccomando di aver impostato la tipologia dell’applicazione FB come FBML, altrimenti i tag verranno ignorati come una qualsiasi pagina html.
Volevo solo dire ce facebook devolper ha cambiato versione
ciao, ottimo tutorial. Non riesco a capire una cosa: con l’applicazione Estended Info, è possibile creare una semplice textarea in cui i nostri amici scrivono qualcosa,e viene inviato al nostro sito? il quale poi ci invierà una semplice email
Grazie!
Ma su altervista.org è possibile creare una applicazione per facebook?
altervista inserisce banner nel codice, che potrebbe creare problemi
no ci sono riuscito a inserire i banner pubblicitari… adesso mi sto mettendo a creare una classifica per la mia applicazione. Se ho problemi ti faccio sapere… grz di tutto a te e a qsta guida! :D
figurati! in bocca al lupo ;)
Ciao ho finito di creare la mia applicazione, è ancora in fase di test ma sono riuscito a fare il necessario xD
l’unico difetto è ke se ci giocano persone con un id superiore a 12 cifre non viene visualizzato il loro nome sulla classifica, php me lo converte in esadecimale…
Cmq se vuoi vederla vai qui: Battle Click
P.S: Mi servirebbe un codice ke permette all’utente di pubblicare il proprio punteggio in bacheca… tks! =D
Non vedo l’ora di provare.
Una domanda sola?
si possono caricare applicazioni di qualsiasi genere: javscript, java, flash…oppure solo alcune.
Grazie :-) bella
Per un applicazione di tipo fbml.Puoi caricare flash, mentre non si usa il javascript ma un linguaggio simile fbjs (praticamente uguale , ma con alcune limitazioni)
ciao gennaro ,ho creato un test su fb ..ma stò uscendo pazza… nn riesco a collegare l’applicazione …cioè il test nn appare algli altri…mi perdo nella zona callback url… sai aiutarmi? …stò per esaurirmi…
risposto e risolto via FB
Salve,
un informazione: com’è possibile inserire nel codice dell’applicazione un preload javascript per il caricamento delle pagine?
Con <body onLoad.. risulta errore perchè non è possibile inserire tag body.
Ringrazio anticipatamente
cerca di cambiare approccio, utilizza setTimeout per esempio
Ciao Gennaro,
ho creato un test a risposta multipla sia con Quiz Monster che con Quiz Planet, ma non riesco a far sì che nella pagina del risultato compaia il pulsante “+Aggiungi al Profilo” come in altri quiz creati da altri…
sai mica come posso fare?
Grazie
Ciao
Se le altre sono state crate con monster o planet, allora deve esserci qualche opzione da attivare, altrimenti vuol dire che queste apps non hanno il pulsante “Aggiungi al profilo”.
Ciao Gennaro e grazie fin da ora per il tuo aiuto…
Ho fatto tutto come hai segnalato, cercando anche di improvvisare visto che dalla tua guida ad oggi le cose sono un pò cambiate…
Ma cmq… Quando accedo all’applicazione mi da il seguente errore:
Warning: include_once(jsonwrapper/jsonwrapper.php) [function.include-once]: failed to open stream: No such file or directory in /web/htdocs/www.nuovacura.it/home/stappalabottiglia/facebookapi_php5_restlib.php on line 35
Warning: include_once() [function.include]: Failed opening ‘jsonwrapper/jsonwrapper.php’ for inclusion (include_path=’.:/php5/lib/php/’) in /web/htdocs/www.nuovacura.it/home/stappalabottiglia/facebookapi_php5_restlib.php on line 35
Il tuo ID utente � :1663580545
Cosa potrebbe essere? Mi sai dire?
Rigrazie mille!!! ;-)
Non trova il file jsonwrapper.php nella cartella jsonwrapper. O controlli che esista o commenta la linea 35 del file facebookapi_php5_restlib.php .
il fatto che ti esca il tuo id vuol dire che il resto è tutto ok.
Grazie mi sei servito di grande aiuto :)
Ciao caro, visto che sai programmare applicativi su Fb possiamo fare due chiacchere per un lavoro che devo fare?
Grazie caro!
Andrew, utilizza il modulo contatti per metterti in contatto privatamente
si puo creare un applicazione x bloccare chi non vediamo. Mi spiego meglio. Una persona mi ha bloccata e di recente ho creato nuovi account, sono andata subito in impostazioni privacy x bloccarla ma non la vedo. Premetto che io sono visibile solo ai miei contatti, ho usato mail diverse e non la trovo ma la vedo con gli account dei miei familiari quindi sempre dallo stesso pc. Ora mi chiedo come ha fatto a bloccare tutti i kiei account è possibile che ha creato una applicazione che blocca chiunque abbia il mio nome e cognome quindi anche i miei nuovi account? Grazie
Ciao,
le applicazioni facebook non possono modificare il comportamento di FB in nessun modo, il loro campo di azione è l’applicazione stessa (solo quando ci entri) ed i vari messaggi presenti sulla bacheca o sul profilo. Questi messaggi sono statici e non interagiscono con i dati dell’utente. Tutto quello che si dice in giro (per esempio, “controlla chi visita il tuo profilo” ecc…ecc…) è falso.
Facebook permette di bloccare un utente solo tramite nome o email.
che casino desisto
Molto utile !