Comunidad de diseño web y desarrollo en internet online

Concurso en sitio Web tomando información de Facebook y Twitter

Citar            
MensajeEscrito el 10 Oct 2011 03:22 am
Buenas noches lectores:

Mi nombre es Julian Moreno, pero también me identifico como Merlyn Moreno. Actualmente vivo en Bogotá (Colombia) trabajo como Web Developer Junior lo que significa que estoy empezando con PHP, MySQL y JavaScript.

Mi jefe me ha pedido hacer un sitio Web que interactúe con la información de Facebook y Twitter, pero ahora mismo no sé como hacerlo. Por lo tanto, me he contactado con ustedes para que me ayuden con esto y sea muy util para otros lectores.

Lo que mi jefe me pidió, es la siguiente:

1. El usuario debe poder loguearse con Facebbok o Twitter.
2. Si el usuario entra con Facebook, el sistema debe mostrar un segundo paso para agregar la cuenta de Twitter, o viceversa.
3. La dinámica de la competencia requiere que el usuario se acumule "corazones" y "diamantes" y estos son ganados; un corazón por un like o amigo de Facebook y tres corazones, una mención en Twetter. En ambos casos, necesitaríamos tener en cuenta dos variables para contabilizar los puntos:
• En Facebook, usuario y like o amigo, los dos relacionados.
• En Twitter, que la mención contemple el usuario y que este contenga el @twitter de la cantante.

Si es del caso, propongo almacenar los archivos en Google Code o en Github para que todos puedan disfrutar del resultado obtenido por todos los que colaboren con éste proyecto.

Gracias por su valiosa ayuda.

Por merlyn333

18 de clabLevel



Genero:Masculino  

Bogota

firefox
Citar            
MensajeEscrito el 12 Oct 2011 02:28 am
hola, espero no te caiga mal pero como junior tu jefe te mató, para loguear con facebook tenes q usar un plugin llamado "login" xD no fueron muy creativos con el nombre :P lo mismo con like(plugin llamado like) vas a tener q hacer uso de los SDK de facebook, en la descripcion vas a tener problemas al guardar los datos del usuario y sus respectivos diamantes y corazones ya q para acceder a la información básica de cada usuario de fb necesitas permisos y para tratar con estos datos necesitas un cetificado SSL
disculpa q no te facilite ningún código pero este proyecto no es chiquito, tampoco grande pero lleva xD te puedo guiar un poco.
de twitter ni idea nunca investigue su api :) espero haber sido de ayuda.

Por ragnar_ok

8 de clabLevel



Genero:Masculino  

dibujante programador maquetador

chrome
Citar            
MensajeEscrito el 12 Oct 2011 03:01 am
Gracias ragnar_ok por tu respuesta. Continuaré informándome sobre el tema.

Por merlyn333

18 de clabLevel



Genero:Masculino  

Bogota

firefox
Citar            
MensajeEscrito el 12 Oct 2011 03:25 am
wow, parece que para empezar tu jefe te mató. Y debes hacerlo sólo o tenés un equipo de trabajo?

espero que tengas suerte y aprendas. revisa en el listado de tags http://www.cristalab.com/tags/ a ver si conseguís algo que te sirva.

saludos

Por Mariux

BOFH

7756 de clabLevel

28 tutoriales
15 articulos

Genero:Femenino   Héroes Editores

Diseñadora & ilustradora

chrome
Citar            
MensajeEscrito el 13 Oct 2011 01:38 am
Nada, estoy solo. Tendré en cuenta tu sugerencia. Muchas gracias.

Por merlyn333

18 de clabLevel



Genero:Masculino  

Bogota

firefox
Citar            
MensajeEscrito el 15 Oct 2011 03:33 pm
Tal vez este tutorial te sirva, un saludo!

Por josueochoa

8 de clabLevel



Genero:Masculino  

Desarrollador web

chrome
Citar            
MensajeEscrito el 16 Oct 2011 08:54 pm
Hola, yo estoy en haciendo algo similar a la primera parte de lo tuyo, que el usuario pueda registrarse usuado su cuenta de facebook o twitter. Hasta ahora solo lo e conseguido con facebook, twitter me esta comenzando a comlicar un poco pero te voy a tratar de explicar lo de facebook de la forma mas facil y practica que pueda.


Para comensar de tejo algunos links, a mi me sirvieron muchisimo:

Documentacion Oficial
- https://developers.facebook.com/docs/sdks/

Post que hablan hacer que facebook, y sus sdk (remendado, en español)
- http://chusete.es/2011/09/13/introduccion-a-la-programacion-en-facebook/
- http://chusete.es/2011/09/16/introduccion-a-la-programacion-facebook-ii/
- http://chusete.es/2011/09/18/introduccion-a-la-programacion-en-facebook-iii/
- http://chusete.es/2011/09/22/introduccion-a-la-programacion-en-facebook-iv/
- http://chusete.es/2011/09/23/introduccion-a-la-programacion-en-facebook-v/



y ahora si te muestro mi solucion:

Primero que nada debes registrar tu aplicacion en facebook, aqui

ahora debes crear un archivo html llamado channel que contenga:

Código HTML :

<script src="http://connect.facebook.net/es_ES/all.js"></script> 


Ahora debes inicializar con javascript

Código HTML :

<script src="http://connect.facebook.net/es_ES/all.js"></script>
<div id="fb-root"></div>
<script>
                // se inicia la coneccion con facebook
                FB.init({
                    appId  : 'ID DE TU APLICACION',
                    status : true, // check login status
                    cookie : true, // enable cookies to allow the server to access the session
                    xfbml  : true, // parse XFBML
                    channelURL : 'channel.html', // channel.html 
                    oauth  : true // enable OAuth 2.0
                });
</script>



Lo Primero es un enlace que llamara a una funcion javaScript

Código HTML :

<a href="#" onclick="InicioFacebook()">Iniciar Sesion con Facebook</a>


La funcion se encargara de ver el estado de la sesion, si esque se a iniciado sesión, y si se han consedido los permisos

Código Javascript :

function InicioFacebook () {
                                                                                            
                    FB.getLoginStatus(function(response) {  
                                                                                                                            
                        if (response.authResponse) {
                                                                                                                            
                            window.location = 'http://<?php echo $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ?>?login=facebook';
                                                                                                                                                                             
                        } else {  
                                                                                                    
                            solicitarPermisos();
                        }  
                    });                                                          
                }
                        
                function solicitarPermisos () {
                        
                    var cb = function(response) {
                                                                                                                    
                        if (response.status === 'connected') {
                                                                                                    
                            window.location = 'http://<?php echo $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ?>?login=facebook';
                                                                                                    
                        } else {
                                                                                                    
                        }
                    };
                                                                        
                    // si quieres agregar mas permisos los pones en scope 
                    // separando con una coma ( , ), como por ejemplo para 
                    // email y escribir en el muro seria scope: 'email,publish_stream'  
                    // averigua mas sobre esto en la documentacion
                            
                    FB.login(cb, { scope: 'email' }); 
                        
                }



ahora pasamos al lado php, ( esta parte no me acomo mucho porque debi hacrlo masomenos de las misma manera en que ya estaban echas las cosas, un verdadero asco..), pero continuemos.

estar todo bien y los permisos concedidos la pagina se recarga especificando en la url que que se iniciara sesión con una cuenta de facebook.

primero verificamos la variable login y vemos cual es su valor.

Código PHP :

<?php

if (isset($_GET[login])) {

    switch ($_GET[login]) {

        case 'facebook':

            loginFacebook();

            break;

       //   ..............................
    }
}

?>


de ir todo correcto llama a la funcion loginFacebook(), donde terminara es asunto pero primero necesitas el sdk php de facebook, el que hace uso de cURL y JSON, cosa que supe por ningún lado y hacia que no funcionara hasta que ente un poquito en el código para descubrirlo...

en funcion deveras inicializar otravez y luego podras acceder a a toda la informacion del usuario segun los permidos solicitados.

Código PHP :


function loginFacebook() {

// el sdk de facebook requiere cURL y JSON

    require_once("src/facebook.php");

    $config = array(
        'appId' => 'ID',
        'secret' => 'SECRET',
        'fileUpload' => false // optional
    );

    $facebook = new Facebook($config);

    echo '<br> obtener datso usuario<br>';

    $user_profile = $facebook->api('/me', 'GET');

    echo 'id: ' . $user_profile['id'];
    echo '<br>Nombre: ' . $user_profile['first_name'] . ' ' . $user_profile['last_name'];

    echo '<hr>Toda la Informacion disponible<br>';
    
    echo '<pre>';
    print_r($user_profile);
    echo '</pre>';
}








y bueno creo que eso seria todo, ahora lo veo muy fácil y sencillo pero la verdad es que significo mucho trabajo e investigación para mi.

Espero sea de ayuda, y cualquier duda, consulta, corrección o sugerencia agrédanme el favor de comunicármela, y paso el dato de que si alguien sabe como conseguir lo mismo con twitter me lo diga de con urgencia por favor... :)

Por Sahch

18 de clabLevel



Genero:Masculino  

Programador de Programas

firefox
Citar            
MensajeEscrito el 16 Oct 2011 08:56 pm
si no logras enterlo o hilar todo me avisas y pondre el codigo completo y mas ordenado... ;)

Por Sahch

18 de clabLevel



Genero:Masculino  

Programador de Programas

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.