Crear una aplicación de Frases para Facebook: Recuperar frases desde una base de datos
Este articulo hace parte de la vieja API de Facebook, para más información sobre la nueva API te recomiendo leer Funcionamiento de la Graph API de Facebook.
Anteriormente había explicado como mostrar aleatoriamente las frases desde un archivo de texto usando PHP, el problema de usar este método es que se puede volver muy fastidioso estar editando el archivo de texto para introducir una nueva frase; el uso de una base de datos convierte este proceso en algo más sencillo ademas nos de muchas más ventajas como la posibilidad de permitirle a los usuarios enviar sus propias frases, mostrar todas las frases en una tabla, etc.
Creando la base de datos en MySQL
Se debe crear una base de datos con el nombre que quieran, en este caso yo usare el nombre «app_quotes» y luego debemos crear una tabla con una estructura como la siguiente:
CREATE TABLE frases ( id INT PRIMARY KEY AUTO_INCREMENT, frase VARCHAR(150) );
Después de crear la tabla deben insertar las frases para luego mostrarlas.
Recuperar las frases desde la base de datos
$conexion = mysql_connect("localhost", "usuario", "password"); mysql_select_db("app_quotes", $conexion); $consulta = "SELECT frase FROM frases ORDER BY RAND() LIMIT 1"; $query = mysql_query($consulta, $conexion) or die(mysql_error()); $row = mysql_fetch_row($query); $frase = $row[0]; echo "La frase del día es: ".$frase;
Publicar la frase en el muro
<script> function publicar(){ var mensaje = "<?php echo $frase; ?>"; var user_message_prompt = "¿Deseas comentar algo?"; var user_message = "Que buena frase!"; var attachment = {'media': [{'type':'image', 'src':'http://tuweb.info/logo.png', 'href':'http://apps.facebook.com/tuaplicacion/'}], 'name': mensaje +'<br />', 'description':'Frases Urban'}; Facebook.streamPublish(user_message,attachment,'','',user_message_prompt); } publicar(); </script>