Integrar Facebook Connecte em seu site

Pré-requisito

Antes de abordar este tutorial, você deve dispor de sólidos conhecimentos em PHP e JavaScript pois estas APIs são difíceis de apreender. Este tutorial é jovem e pode então conter imperfeições, obrigado de me enviar comentários. Os comentários não se substituem ao suporte, para isso você dispõe do fórum. Leia bem este tutorial na sua integridade.

Registrar sua aplicação

Para beneficiar das APIs do Facebook, você deve registrar uma aplicação, ela lhe fornecerá uma chave secreta e um ID de aplicação que são indispensáveis para interagir com Facebook.

Recuperar PHP SDK

Esta biblioteca de função lhe mastigará boa parte de seu trabalho :

  • Baixar Php SDK

Uploade em seu servidor /src/facebook.php

Integre Facebook connect

Instale o botão

Facebook lhe propõe duas maneiras de construir seu botão : o método xfbml e o outro método. Nós estudaremos o outro método, mais flexível penso eu.

O outro método é bastante simples, é um simples botão, ao qual é associado funções originárias da biblioteca JavaScript SDK.

Eu lhe dou um código JavaScript, que reúne o essencial daquilo que se tem necessidade para fazer nosso botão:

<script type="text/javascript">     
function fblogout() {     
          FB.logout(function () {     
     window.location.reload(); });     
    }     
      window.fbAsyncInit = function() {     
        FB.init({     
          appId   : '<?php echo $facebook->getAppId(); ?>',     
          session : <?php echo json_encode($session); ?>,     
          status  : true,     
          cookie  : true,     
          xfbml   : true     
        });     

        FB.Event.subscribe('auth.login', function() {     
          window.location.reload();     
        });     
      };     

      (function() {     
        var e = document.createElement('script');     
        e.src = document.location.protocol + '//connect.facebook.net/fr_FR/all.js';     
        e.async = true;     
        document.getElementById('fb-root').appendChild(e);     
      }());     
          //your fb login function     
          function fblogin() {     
     FB.login(function(response) {     
              //...     
            }, {perms:'read_stream,publish_stream,offline_access'});     
   redir();     
          }     
        </script>

Neste nível é muito simples, para você se conectar acione a função fblogin() durante o acontecimento "clic" (onclick). Para a desconexão bastará acionar fblogout().
Concretamente o que vão fazer estas funções ?

fblogin() : verifique que o usuário está conectado ao Facebook, se você estiver conectado ela verificará que você dispõe dos direitos necessários. Os direitos são personalizáveis:
perms:'read_stream,publish_stream,offline_access' à modificar com este artigo de referencia.

fblogout() : Esta função desconectará o usuário do Facebook.

Recuperar os dados

Será preciso em um primeiro momento recuperar os dados, o código seguinte vai verificar se o visitante está conectado Facebook, se tem as autorizações, neste caso os dados são automaticamente registrados no quadro estiver realmente conectado e se você ($me). Note que você deve anotar seu appid e sua chave secreta bem como trocar o caminho de seu arquivo facebook.php.

require 'function/facebook/facebook.php';     
$facebook = new Facebook(array(  'appId'  => '',  'secret' => '',  'cookie' => true,));     
$session = $facebook->getSession();     
$me = null;     

if($session){     
 try {     
  $uid = $facebook->getUser();     
  $me = $facebook->api('/me');     
 }     
 catch(FacebookApiException $e){     
  error_log($e);     
 }     
} 

Observação : if($session) para testar a presença de sessão facebook e if($me) para saber se dispõe dos dados de usuário. ital>

Assim, com q os dados recuperados, você vai ter que usá-los de forma diferente dependendo do seu site: criar uma conta de usuário ao se conectar ou apenas usar como conexão.

Se você tem sua proposta sistema para inscrição e conexão, então somente irá servir como conexão ou também você pode usá-lo como o sistema de inscrição.

Digamos que você use apenas como um sistema de conexão para receber dados, na recepção dos dados você deve verificar se você conhece este membro, e o método mais simples é verificar a existência do e-mail em seu banco de dados. Se o usuário está registrado, você dever somente criar suas variáveis de sessões como você teria feito com seu próprio sistema desconexão.

  • Cet article apresenta à você a etapa essencial ao seu sistema de conexão.


Problemas que você pode encontrar


<ital>"Como saber se o usuário se desconectou do Facebook ?"

Em um mundo perfeito iríamos testar apenas a presença da variável $me e se não existir destruiríamos a variável de sessão. Só que a vida é mal feita e você decidiu ter dois sistemas de conexão e que ao fazer isso você lhe desconectaria os usuários que usuários que estão conectados sem facebook (porque $me não existe, neste caso). Então, a maneira mais fácil é criar uma variável de sessão $ [$_SESSION['facebook'] o que atesta que você está conectado usando o Facebook. E se a sessão existir, mas a variável $me não, isso significaria que o usuário estava conectado usando o Facebook e se desconectou depois, então o desconectamos.

__ à completar__

Fontes

Facebook desenvolvedor
Tradução feita por Ana Spadari

Nosso conteúdo é produzido em colaboração com especialistas em tecnologia da informação sob o comando de Jean-François Pillou, fundador do CCM.net. CCM é um site sobre tecnologia líder em nível internacional e está disponível em 11 idiomas.
Este documento, intitulado 'Integrar Facebook Connecte em seu site ', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.

Assine nossa newsletter!

Assine nossa newsletter!
Junte-se à comunidade