Una vez estaba en la cocina preparándome un café cuando de repente me bajó la inspiración y decidí hacer una aplicación Facebook. La investigación fue ardua, hice las pruebas de concepto respectivas y logré mi cometido. Sin embargo, por cosas de tiempo no terminé la aplicación para variar y quedó stand by hasta el próximo semestre.
Hace unos días, me pidieron ayuda para hacer lo mismo usando lenguaje FBML y recordé lo que ya había realizado. Pero como la memoria es frágil decidí utilizar a nuestro amigo Google para resolver algunas dudas que tenía. Para mi sorpresa, no encontré lo que necesitaba, así que por lo tanto decidí hacer un Tutorial en lenguaje humano para que todos los desarrolladores entendamos como es que debemos hacer una aplicación para Facebook compatible con la versión actual. Así que, manos a la obra!
Como funciona una aplicacion Facebook?
Facebook soporta dos formatos de aplicaciones externas, aplicaciones creadas usando FBML y las que usan el no estandar iframe. Para este tutorial nos enfocaremos en la creación de aplicaciones usando FBML, ya que es una opción importante cuando se necesita usar las gráficas y herramientas de Facebook nativas.
Antes de seguir les recomiendo leer el Tutorial que Facebook dispone como introducción para que entiendan con mayor claridad, luego de eso, sigan con la este tutorial.
Ingredientes
- Tener conocimientos de HTML, CSS y de PHP
- Contar con un hosting y dominio para subir la aplicación
- Librerias cliente PHP de Facebook – Que puedes descargar aquí
- Ser parte de Facebook Developers – Si no eres parte, debes ingresar en App Developers
- Un objetivo de aplicación, por ejemplo: “Una aplicación para mostrar mi último mensaje de twitter!”
Creando la aplicacion
Como ya contamos con todos estos nuestros ingredientes podemos comenzar con la creación de la aplicación.
Lo primero en el menú es Configurar una nueva aplicación, esto lo podemos hacer en la App de Developers de Facebook haciendo click en el botón “+ Configurar una nueva aplicación” o, si estás más atento, haciendo click en el link anterior.
Acá entraré en detalle para guiarlos mejor:
- Escribimos el nombre de nuestra aplicación y aceptamos los términos y condiciones.

- La siguiente pantalla nos entrega información relacionada con nuestra aplicación y que ocuparemos para el desarrollo: Application ID, API Key, Secret. Estos valores son los que nos identifican con Facebook como aplicación y que nos permite interactuar con Facebook y los usuarios. Estos datos son sumamente importantes y nunca deben ser revelados, bueno, el nombre sí.

- A la izquierda tenemos un menú de configuración donde nos enfocaremos en los siguientes puntos: “Auth (Autencación)”, “Profiles (Perfiles)“, “Advanced (Avanzado)” y “Canvas (Lienzo)“.
- En “Auth (Autencación)” seleccionamos “Disponible para usuarios” y en Post-Authorize Callback URL escribimos la URL de retorno, es decir, “http://apps.facebook.com/ultimotwitterupdate/“
- En “Profiles (Perfiles)” debemos escribir el Tab Name y el Tab URL.
En el Tab Name debemos escribir un nombre de no más de 16 caracteres (“Ultimo Update“) y en el Tab URL debemos definir la URL donde se encuentra la vista de nuestra aplicación para los perfiles (“tab“).
El Profile Box es la forma en que se mostrara en las cajas del perfil por defecto, por ejemplo “Narrow“. - La seccion de “Advanced (Avanzado)” nos sirve para dejar nuestra aplicación en “Sandbox Mode” y así solo los desarrolladores podrán verla. Debemos activar esta opción antes de seguir.
- En la sección “Canvas (Lienzo)” se define la URL que contiene el despliegue (layout) de la aplicación y de donde Facebook debe obtenerlo para mostrarlo. Para configurarlo vamos a escribir “ultimotwitterupdate” en la URL de la página y http://www.midominio.com/ultimotwitterupdate/ en Canvas Callback URL. Para ver los cambios realizados debemos desarrollar en forma local y subir mediante FTP.
Luego, en la sección donde dice “Render Method (Método de renderización)” debemos seleccionar FBML, los otros datos quedan por defecto. - Guardamos los cambios.
A ensuciarse las manos
Ahora es cuando viene la parte mas entretenida de la historia, el desarrollo de la aplicación.
Pero, un momento…no tengo idea de que debe hacer la aplicación! Mejor investigo todo lo necesario en base al objetivo planteado y luego, defino la conclusión.
El proceso anteriormente nombrado dio como resultado dos objetivos más específicos:
- “Debo usar la API de Twitter para traer el último mensaje de un usuario en formato JSON”
Pero, y cómo? Del siguiente modo, usamos la API de Twitter para llegar a la información de algún usuario:
http://api.twitter.com/1/statuses/user_timeline.json?screen_name=USUARIO_TWITTER&count=1 - “El usuario Facebook elige el nombre de usuario y se almacena en una base de datos (SQLite)”.
Listo! Ahora que tengo claro lo que debo hacer voy a dedicarme al layout en Facebook, porque si quiero realizar la aplicación primero debo saber verla funcionando.
Para esto, tenemos que conocer un poco más de FBML, así que les dejo la misión de leer sobre este lenguaje en el Wiki de Facebook.
Preparar bien la mesa
Antes de partir con el sitio debemos configurar un archivo que permita la comunicación entre Facebook y la aplicación. Dicho archivo se llama “xd_receiver.htm” y es un archivo que va en la raiz del sitio. Su contenido es el siguiente:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Cross-Domain Receiver Page</title> </head> <body> <script src="http://static.ak.facebook.com/js/api_lib/v0.4/XdCommReceiver.js?2" type="text/javascript"></script> </body> </html>
Si quieren leer más sobre esto pueden hacerlo en el Wiki de Facebook: Cross-Domain Communication Channel
“Aunque no venia preparado”
Ahora viene lo importante. Yo sé que ustedes esperan que explique todo el código de conexión y de configuración para la App Facebook, pero les quiero contar que me adelanté y les traje una especie de framework que les facilitará muchas de las tareas. Este framework se creó en base a otras aplicaciones que tenía desarrolladas y que me hicieron pensar en la real ayuda de este tutorial, su nombre es “Fracework” y lo pueden revisar en: http://code.google.com/p/fracework/
Esta suerte de framework, permite configurar la aplicación y crear las vistas. Probablemente cuando lo vean no va a ser lo que esperan a nivel de código, pero estoy seguro que les va a ser muy útil.
El contenido de Fracework tiene la siguiente estructura de archivos:
- client/ : Libreria cliente PHP de Facebook
- config/ : Archivo de configuraciones de la aplicación
- includes/ : Conexión con facebook, instancia de clase clientes
- modules/ : Modulos de la aplicación
- views/ : Vistas de la aplicación
- index.php : Archivo que muestra las distintas vistas
- xd_receiver.htm : Cross-Domain Communication Channel
Para utilizarlo solo deben descomprimir el archivo en la carpeta de la aplicación y comenzar a desarrollar.
Configuracion
En la carpeta “config“, de nuestra aplicación, nos encontramos con el archivo de configuraciones de la aplicación “facebook.php“, acá editamos los datos de nuestra aplicación y guardamos:
<?php /** * Facebook App client * @author @alvaroveliz **/ $fb_apikey = '...'; // Configurar API KEY $fb_secret = '...'; // Secret Key $app_callbackurl = 'http://www.midominio.com/ultimotwitterupdate/'; // APP Canvas URL $canvas_url = 'http://apps.facebook.com/ultimotwitterupdate/'; // Canvas URL ?>
Recuerdan que les comente en la creación de la aplicación sobre los datos “importantes”, bueno, acá es donde se deben configurar.
Hello World
En la carpeta “views” encontramos 3 archivos:
- default.php: Vista general de la aplicación
- profile.php: Vista de caja caja en el perfil
- global.php: Vista de tab (cuadro) en el perfil (narrow y wide)
- Las vistas personalizadas se agregan en la carpeta “views” y se ven usando el parámetro “section”. Por ejemplo “index.php?section=help” mostrará la vista help.php
Ahora, para hacer la prueba de “Hello world”, editamos el archivo default.php y agregamos “<h1>Hello facebook app</h1>” como dice el código:
<fb:fbml version="1.0"> <h1>Hello facebook app</h1> </fb:fbml>
Subimos al servidor nuestra aplicación y vamos a la dirección http://apps.facebook.com/ultimotwitterupdate/, en esta dirección vamos a ver nuestra aplicación creada, pero antes debemos agregarla a nuestro perfil.
Luego de agregarla, la aplicación nos mostrará el siguiente resultado:
Agregando el boton para perfil
Como ya tenemos nuestra aplicación andando, podemos agregar un código FBML que nos permitirá llegar más lejos aún. Por ejemplo, con la siguiente linea podremos agregar un botón que permitirá agregar nuestra aplicación como caja en el perfil.
Editamos el archivo de vistas “default.php” y agregamos:
<fb:add-section-button section="profile" />
Esto nos da el siguiente resultado:
“Guayerfreims”
Ahora que tenemos andando la aplicación, nos vamos a enfocar en nuestro ejemplo.
El layout de nuestro ejemplo debe preguntar cual es el nick del usuario en twitter, para que traiga dinámicamente el último update, luego deberá mostrarlo. (Como consideración, el usuario no debe tener sus updates protegidos)
Está sería la disposición del despliegue:
El modelo de datos
Luego que hicimos nuestros layouts en papel, nos debemos enfocar en el modelo de datos. En nuestra base de datos debemos guardar la información que nos permita relacionar usuario de facebook y usuario twitter, esta podría ser la mejor opción: “id de usuario de facebook”, “nombre usuario de twitter”, “mensaje ultimo update”, “fecha y hora de ultima consulta”.
La única tabla que necesito la nombraremos como “last_updates“:
- id:integer(11), PK
- facebook_user:integer(11)
- twitter_username:varchar(30)
- last_update:varchar(140)
- last_query:datetime
La instrucción SQL sería del siguiente modo:
CREATE TABLE "last_updates" ("id" INTEGER PRIMARY KEY NOT NULL , "facebook_user" INTEGER NOT NULL , "twitter_username" VARCHAR(30) NOT NULL , "last_update" VARCHAR(140) NOT NULL , "last_query" DATETIME NOT NULL )
El código da App
De acuerdo a los “wireframes” el código de la vista por defecto será del siguiente modo:
Vista default.php
<fb:fbml version="1.0"> <fb:dashboard> <fb:help href="index.php?section=help">Ayuda</fb:help> </fb:dashboard> Ingrese el nick del usuario (el usuario no debe tener los updates protegidos) <br /> <form name="save_user" method="post" action=""> <input type="text" id="twitter_user" name="twitter_user" size="20" /> <input type="submit" value="Definir usuario" /> </form> <div id="update-quote"> </div> <br /> <fb:add-section-button section="profile" /> </fb:fbml>
Vista global.php
<fb:narrow> <div id="update-quote"> Narrow View </div> </fb:narrow> <fb:wide> <div id="update-quote"> Wide View </div> <fb:wide>
Vista profile.php
<div id="update-quote"> </div>
Con un poco de estilos podríamos llegar a nuestro objetivo con mayor efectividad, pero por el momento solo haré el ejemplo con una aplicación casi por defecto.
El módulo “app.php”
Para habilitar los módulos que vamos creando, se debe editar el archivo “config/app.php” y agregar al arreglo el nombre de la app, por ejemplo:
$modules = array( 'app', // Modulo de Aplicacion );
Este módulo se encarga de realizar todas las conexiones con Twitter y la base de datos para almacenar la información.A grandes rasgos se compone de funciones como:
- get_twitter_data : Que obtiene la información de Twitter usando cURL
- set_user_data : Que guarda la información del usuario que agrego la aplicación
- get_user_data : Que obtiene la información de un usuario
- update_user_data : Que actualiza la información del usuario utilizando la información de Twitter.
A probar la aplicación
Luego, que está todo listo, subo a producción y hago las pruebas necesarias para evitar errores. No está demás decir que a medida que realizo el diseño y el desarrollo siempre se deben hacer updates, porque es como estar trabajando a ciegas.
Para probar la aplicación ingresen a: http://apps.facebook.com/ultimotwitterupdate/
Deje reposar 5 minutos y sirva
Luego de todo este desarrollo podemos sacar como conclusión que Facebook es una de las Redes Sociales más potentes por la facilidad en que se pueden desarrollar aplicaciones y la capacidad de integración que se puede obtener.
Si bien el desarrollo no es muy cómodo, es muy simple la forma en que se pueden agregar elementos propios de Facebook, esto lo hace una herramienta ágil.
Finalmente, les dejo la misión de leer mucho sobre lo nuevo que se viene para el desarrollo de aplicaciones en Facebook y además de que le pierdan el miedo a crear aplicaciones nuevas.
Muchas gracias por su tiempo, espero que este plato haya sido de su agrado.






Comentarios
buen aporte!
cuando tenga tiempo lo reviso en detalle
— enviado el marzo 18, 2010 a las 11:02 pm
Gracias Christian! Lo mantendré en Google Code y estaré atento a cualquier aporte!
— enviado el marzo 18, 2010 a las 11:09 pm
Gracias por este tutorial Alvaro. Soy novato en esto de construir aplicaciones en facebook, y me e quedado estancado en el paso que dice: “El modelo de datos” sobre subir la tabla a la base de datos, que me imagino te refieres a la base de datos de mi hosting. El problema es que me arroja un error al subir la tabla:
SQL query:
CREATE TABLE “last_updates”(
“id”INTEGER PRIMARY KEY NOT NULL ,
“facebook_user”INTEGER NOT NULL ,
“twitter_username”VARCHAR( 30 ) NOT NULL ,
“last_update”VARCHAR( 140 ) NOT NULL ,
“last_query”DATETIME NOT NULL
)
MySQL said: Documentation
#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘”last_updates” (“id” INTEGER PRIMARY KEY NOT NULL , “facebook_user” INTEGER NOT’ at line 1
Sabras porque pasa eso?? Estoy utilizando un hosting gratuito 000webhost.com para probar la aplicación, y el nombre de la base de datos se llama: a7540207_twitter y dentro de ella e insertado la instrucción SQL que comentas arriba, arrojandome el error que te comento. No entiendo porque.
— enviado el abril 11, 2010 a las 4:27 am
Antes que todo Edgar, muchas gracias por tu comentario.
Para responder a tu pregunta debo hacer destacar que la instrucción SQL sirve para SQLite, que es el motor que ocupa la aplicación de ejemplo.
Para MySQL utiliza:
CREATE TABLE `gpstracker`.`last_updates` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`facebook_user` INT NOT NULL ,
`twitter_username` VARCHAR( 30 ) NOT NULL ,
`last_update` VARCHAR( 140 ) NOT NULL ,
`last_query` DATETIME NOT NULL
) ENGINE = MYISAM ;
Ahora, debo aclarar que la instrucción SQL que aparece en este tutorial no es necesaria para realizar tus aplicaciones, puesto que es requerimiento propio del ejemplo. Te recomiendo bajar “fracework” y hacer tus pruebas.
Saludos!
— enviado el abril 11, 2010 a las 4:58 am
Vale, muchas gracias Alvaro. Ya se entonces cuando me suceda ese tipo de errores.
Estoy probando CakePHP que a mi modo de ver lo veo como mas completo, pero hay que leer mucho para entenderlo y llevarlo a cabo =)
Exitos!!!
— enviado el abril 11, 2010 a las 4:25 pm
Hola Alvaro.. queria agraderte y felicitarte por el tuturial, realmente me resulto muy util y me sirvio para entender algunas cosas. Te queria hacer un comentario, usando el esquema de modulos y demas como el tuyo, arme una pequeña aplicacion de prueba en la que me interesa que se agregue un cuadro en el profile del usuario, tal como en tu aplicacion. El problema que encuentro es que si modifico algo de la vista profile.php, no se actualiza en los perfiles de quienes ya tienen instalada la aplicacion. Como debo hacer para que esto sea dinamico?
muchas gracias y saludos!
— enviado el abril 12, 2010 a las 10:17 am
Federico, gracias por tu comentario. Estaba revisando lo que me comentabas y efectivamente no realiza la actualización en la caja de perfil (wide y narrow). Según la documentación de facebook, debe existir un handler en cada petición que se haga al layout y esto permitiría la actualización.
Voy a revisar como es que puedo solucionar este problema y te comento directamente por acá.
Saludos!
— enviado el abril 12, 2010 a las 11:18 am
gracias Alvaro.. espero con ansias tu respuesta.. la verdad es que se me esta complicando encontrar informacion al respecto. mi objetivo es poder crear una aplicacion que pueda ser colocada como un cuadro en el profile y que su contenido sea dinamico. es decir que cada vez que se cargue muestre ultima informacion cargada. Hasta ahora solo consegui subirla en forma estatica. muchas gracias por tu ayuda!
— enviado el abril 12, 2010 a las 3:09 pm
Pequeña consulta, el fracework, como lo subo al ftp?
Porque no queda claro, ya que en facebook me pide una dirección, debo poner donde se encuentra el default? digamos /views/ ?
Había hecho una aplicación, y funcionaba correctamente, después la misma aplicación (cambiando las key y url) subi a otra aplicación la misma. Y no me funcionaba. O sea debe ser problema de como subí el material, saludos.
— enviado el mayo 11, 2010 a las 3:16 pm
Carlos, debes subir el fracework a un hosting mediante ftp.
Si deseas utilizar una carpeta “/facebookapp”, por ejemplo, debes subir todo el contenido de fracework a esa carpeta en tu servidor mediante FTP.
Lo siguiente es direccionar el canvas de tu aplicación a esa carpeta (http://dominio.com/facebookapp/) y funcionará perfectamente.
Saludos!
— enviado el mayo 11, 2010 a las 4:06 pm
Una consulta, he tratado de entender y creo que lo he heho en un 90%… Pero no entiendo el vínulo que debe existir con la base de datos… La aplicación me funciona en lo visual, pero no me funciona en lo práctico… No puedo vincular twitter con facebook… Ahi les dejo la muestra… http://apps.facebook.com/binaryltda/
A que se deberá?? donde puedo vincular el nombre de la base de datos con esto?.. muchas gracias
— enviado el mayo 19, 2010 a las 4:57 am
Hola alvaro mi pregunta es simple. quiero crear una aplicación sencilla que solo marque el perfil con una CAJA. pero no se como programarla U.U.. me podria ayudar?
Hasta ahora voy por aqui: http://apps.facebook.com/yoamopailitas/?_fb_fromhash=59205168377815928e03d2966d34711e
pero deseo ke aparezca el BOTON agregar a mi perfil.. Ayudame
— enviado el junio 23, 2010 a las 12:42 pm
Hola Gerson,
lo que puedes hacer es utilizar el fracework, instalarlo y luego usar en la vista global agregar el codigo FBML:
Cuentame luego como te va con eso!
Saludos y gracias por visitar el blog
— enviado el junio 24, 2010 a las 1:12 pm
hola mira yo no kiero crear una aplicacion solo rekiero saber, como le hago para que aparezcan en mi perfil los cuadros de las aplicaciones, es cuestion de configuracion o que??? por que en los perfiles de mis amigos si se ven!! como por ejemplo el ekipo de futbol o bff ….ojala me puedas ayudar….espero tu respuesta gracias!!!
— enviado el julio 27, 2010 a las 3:02 am
Hola frida, gracias por tu comentario. Básicamente la mayoría de aplicaciones tienen una vista en el perfil, pero no todas. Al momento de agregar la aplicación a tu facebook, ésta te deberá preguntar en que parte deseas agregarla y ahí es donde se debe configurar la vista de perfil.
— enviado el julio 27, 2010 a las 11:31 am
Me ha resultado tremendamente útil ya que la documentación de facebook es bastante caótica. Solo un apunte, cuando añades a la página de default.php a mi no me funciona… Imagino que Facebook ya lo ha eliminado tal y como he leido en su wiki, “Facebook will deprecate this tag in late 2009/early 2010.”
Un saludo y gracias de nuevo.
— enviado el agosto 5, 2010 a las 3:19 am
Muchas gracias a ti Iko por visitar el blog, saludos!
— enviado el agosto 5, 2010 a las 10:27 am
Solo me asalta una duda, en mi aplicación estoy tratando de publicar información en el muro del usuario pero usando el framework solo se le piden permisos básicos al usuario por lo que no tengo la opcion de “publish_stream”… ¿Sabes donde se hace la petición de permisos para poder ampliarla?
Gracias!
— enviado el agosto 6, 2010 a las 6:06 am
Por si a alguien le resulta de alguna utilidad..o para poder pedir permisos de publish_stream hay que modificar una función.. en /client/facebook.php
public function get_login_url($next, $canvas) {
$page = self::get_facebook_url().’/login.php’;
$params = array(‘api_key’ => $this->api_key,
‘v’ => ’1.0′,
‘req_perms’ => ‘publish_stream’);
//cambiado para que añada nuevos permisos
if ($next) {
$params['next'] = $next;
}
if ($canvas) {
$params['canvas'] = ’1′;
}
return $page . ‘?’ . http_build_query($params);
}
— enviado el agosto 10, 2010 a las 6:28 am
Hola Alvaro.. Muy bueno este material. Estoy comenzando en el desarrollo sobre Facebook, y no me esta siendo muy simple. Encontre tu “Fracework” y me parecio muy interesante, asi que continuare mis pruebas tomandolo como referencia. Segui todos los pasos pero no llego al resultado correcto. Me muestra una pagina EN BLANCO y ningun error. El firebug de Firefox no me muestra ningun error, ni de javascript, ni recurso no cargado, todo correcto. Tienes idea si en estos ultimos meses Facebook ha hecho cambios que puedan afectar?
— enviado el octubre 21, 2010 a las 1:21 pm
Mauricio, actualmente Facebook ha actualizado su forma de hacer aplicaciones lo que eventualmente haya hecho a fracework incompatible en algun grado.
En este momento me encuentro realizando una actualización de fracework para poder publicar en el timeline del usuario, soportar el nuevo formato de autorizacion “OAUTH” y habilitar algunos plugins y ejemplos.
Si tienes algun aporte al código puedes compartirlo a través de mi e-mail y así podré actualizar el proyecto.
Muchas gracias por tu visita y comentario!
— enviado el octubre 21, 2010 a las 5:05 pm
Hola Alvaro… Me gustaria hacer algo parecido a lo que sale en esta pagina: http://farmvillelatest.com/auto-publishing.php , pero no tengo ni idea como puedo hacer, podrias ayudarme con eso. Muchas Gracias.
— enviado el octubre 28, 2010 a las 12:49 pm
Hola que tal estoy intentando crear la aplicacion pero pues no llego algo muy algo uso Joomla pero pues quiero algo mas solo hice un iframe para la web y ya me pueden ayudar…
http://apps.facebook.com/mundialcolombia/
— enviado el noviembre 4, 2010 a las 1:01 am
Hola alvaroveliz, intente crear una aplicación para facebook usando FBML pero no crei que fuera tán difícil ademas no se de PHP.
Lo que yo quiero es hacer una aplicación para perfiles de facebook utilizando FBML, pero ahora hay opciones diferentes a las que están en este tutorial, por lo que no entiendo muy bien, pero viendo que tu tienes mucho conocimiento sobre FBML y PHP quisiera pedirte el favor de que me hagas una aplicación y me pongas como desarrollador, yo te doy la idea de como sería la aplicación pero mejor sería por correo electronico, así que espero me des tu correo en tu pronta respuesta para que me puedas ayudar.
— enviado el noviembre 14, 2010 a las 12:45 am
A por cierto la aplicación es muy, muy fácil
— enviado el noviembre 14, 2010 a las 11:28 pm
Hola, realmente soy nuevo con esto del FBML y pues quiero saber si es posible hacer una especie de frame html, donde colocaria un blog, con extencion .com, todo esto para ingresarlo a una pagina de Facebook, si eso se puedo me gustaria saber como o que me dieran una idea de como realizarlo.
— enviado el diciembre 4, 2010 a las 12:05 am
estimado:
buena receta, pero no he podido ver la aplicacion, me pasa lo mismo que a mauricio. estas trabajando en algunas actualizaciones para tu codigo?, me sería de gran ayuda.
saludos
— enviado el diciembre 15, 2010 a las 7:05 pm
pues no la pude echar a andar out of the box
configure la aplicacion en facebook
cambie el config/facebook.php por los valores de face
y nada… hay alguna incompatibilidad nueva?
— enviado el diciembre 16, 2010 a las 2:10 pm
Excelente tutorial cuando me quede tiempillo trato de hacer una aplicacion sencillita para empezar muchos gracias saludos desde colombia.
— enviado el diciembre 17, 2010 a las 11:34 pm
Hola que tal ?
acabo de hacer una aplicacion FBML la cual me ha costado un ojo de la cara XD por que es mas complejo el tema de jscript de lo normal.-
pues nada.- ahora me falta terminar unas cositas.-
me gustaria q al entrar a la aplicacion dijera en el muro del usuario que PEPE se encuentra en mi pagina .-
y luego me gustaria agregar la opcion de invitar amigos
mi app es esta: http://apps.facebook.com/tarot-tirada-gratis/ espero que les guste
— enviado el diciembre 20, 2010 a las 3:35 pm
por cierto.- no use ninguna libreria en mi servidor .- solo apunto a un php y no uso iframes.-
estoy perdido.- gracias!
— enviado el diciembre 20, 2010 a las 3:36 pm
Estimados, creo que les debo una explicación.
He estado mucho tiempo ocupado y en este momento me encuentro desarrollando una versión nueva de fracework para que sea compatible con la nueva versión de la API.
Se viene un nuevo tutorial que les será muy util…
Saludos!
— enviado el diciembre 20, 2010 a las 4:46 pm