Ir para conteúdo
Entre para seguir isso  
wneo

Facebook Login Graph API

Recommended Posts

Boa tarde!!!

 

Estou implementando a api para login com facebook em uma aplicação web. Estou com dúvida de como fazer para resgatar as informações do usuário que acessou...

O código que estou usando:

// This is called with the results from from FB.getLoginStatus().
  function statusChangeCallback(response) {
    console.log('statusChangeCallback');
    console.log(response);
    // The response object is returned with a status field that lets the
    // app know the current login status of the person.
    // Full docs on the response object can be found in the documentation
    // for FB.getLoginStatus().
    if (response.status === 'connected') {
      // Logged into your app and Facebook.
      
    
      /*testAPI();*/
    } else if (response.status === 'not_authorized') {
      // The person is logged into Facebook, but not your app.
      document.getElementById('status').innerHTML = 'Please log ' +
        'into this app.';
    } else {
      // The person is not logged into Facebook, so we're not sure if
      // they are logged into this app or not.
      document.getElementById('status').innerHTML = 'Por favor, logue ' +
        'com o Facebook.';
    }
  }

  // This function is called when someone finishes with the Login
  // Button.  See the onlogin handler attached to it in the sample
  // code below.
  function checkLoginState() {
    FB.getLoginStatus(function(response) {
      statusChangeCallback(response);
    });
    }
    
    

  
   function logout() {
    FB.logout(function(response) {
       window.location.href="index.php";
    });
  }
  
    window.fbAsyncInit = function() {
  FB.init({
    appId      : '',
    cookie     : true,  // enable cookies to allow the server to access 
                        // the session
    xfbml      : true,  // parse social plugins on this page
    version    : 'v2.2' // use version 2.2
  });

  // Now that we've initialized the JavaScript SDK, we call 
  // FB.getLoginStatus().  This function gets the state of the
  // person visiting this page and can return one of three states to
  // the callback you provide.  They can be:
  //
  // 1. Logged into your app ('connected')
  // 2. Logged into Facebook, but not your app ('not_authorized')
  // 3. Not logged into Facebook and can't tell if they are logged into
  //    your app or not.
  //
  // These three cases are handled in the callback function.

  FB.getLoginStatus(function(response) {
    statusChangeCallback(response);
  });

  };

  // Load the SDK asynchronously
  (function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/pt_BR/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));

  // Here we run a very simple test of the Graph API after login is
  // successful.  See statusChangeCallback() for when this call is made.
  function testAPI() {
    console.log('Welcome!  Fetching your information.... ');
    FB.api('/me', function(response) {
      console.log('Successful login for: ' + response.name);
      document.getElementById('status').innerHTML =
        'Thanks for logging in, ' + response.name + '!';
    });
  }
<fb:login-button scope="public_profile,email,user_friends,user_likes" auth_type= "rerequest" onlogin="checkLoginState();"></fb:login-button>

Gostaria de saber como verficar os dados requisitados pelo acesso com o facebook login... Digamos que 10 usuários fizeram login em minha aplicação, como faço para ver os 10 separadamente pelo retorno Json que vem no Graph api explorer? Ou qual a melhor forma de fazer isso? Alguém sabe aí???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí galera, só para complementar a minha dúvida.. preciso saber como resgatar as permissões de todos usuários.. preciso resgatar o token de cada usuário de alguma forma ou através do graph api explorer isso vai automático? Estou usando o javascript sdk, conforme o codigo que postei acima. Preciso adicionar mais alguma coisa nesse código?

Alguém já fez isso aí????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

  • Conteúdo Similar

    • Por Augusto A.S
      Galera, estou penando em um clique de um `<button>`, peço a ajuda de vocês.
       
      Preciso que, assim que um `button` da classe `btn-remove` for clicado, o valor de seu `data-id` seja pego e enviado como parâmetro para uma função no PHP. Segue abaixo os códigos:
       
      Função PHP:
       
      function removerComentario( $id ) { $deleta = $PDO->prepare("DELETE comentario FROM comentarios WHERE idcomentario = :idcomentario"); $deleta->bindValue(':idcomentario', $id); $deleta->execute(); }  
      $lista = $PDO->query("SELECT convidado.nome, comentarios.comentario, comentarios.idcomentario FROM convidado INNER JOIN comentarios ON convidado.idconvidado = comentarios.idconvidado ORDER BY idcomentario"); while ($rows = $lista->fetch()){ $nome_cmt = $rows['nome']; $coment_cmt = $rows['comentario']; $id_coment = $rows['idcomentario']; printf("<li>$nome_cmt disse: <button class='btn-remove' data-id='$id_coment'>Deletar</button> <br> $coment_cmt </li>"); } SCRIPT:
      <script> $('.btn-remove').click(function(){ var id = $(this).data('id'); $.ajax({ url: "comentario.php", data: { //aqui preciso que o valor do $id da função lá em cima seja igual à var id da segunda linha desse script. }, datatype: "json", type: "POST", success: function (data) { //aqui não entendi, para esse caso, o que devo colocar } }); }); </script> Basicamente o valor não está sendo pego, está dando erro no "$" do "$('btn_remove')", na parte do SCRIPT.
    • Por Roger Cardoso
      <section class="section-50 section-sm-top-90 section-sm-bottom-100 bg-image-6"> <div class="shell-wide isotope-wrap"> <h3 class="text-center">Our Menu</h3> <div class="range range-sm-center"> <div class="cell-xs-12"> <div class="cell-box"> <ul class="isotope-filters-responsive"> <li> <p>Choose your category:</p> </li> <li class="block-top-level"> <!-- Isotope Filters--> <button data-custom-toggle="#isotope-1" data-custom-toggle-disable-on-blur="true" class="isotope-filters-toggle btn btn-primary-lighter btn-shape-circle">Categorias<span class="caret"></span></button> <div id="isotope-1" class="isotope-filters isotope-filters-buttons isotope-filters-buttons-primary-lighter"> <ul class="inline-list"> <?php $consultaCategoria = "SELECT a.idCatPrato, a.NomeCatPrato FROM tb_catpratos a WHERE a.idCatPrato in ( SELECT DISTINCT b.idCatPrato FROM tb_pratos b WHERE b.idCatPrato = a.idCatPrato AND b.status = 's') ORDER BY a.NomeCatPrato"; $resultadoCategoria = mysql_query($consultaCategoria) or die("Erro ao acessar base de dados de categorias"); while ($linhaCategoria = mysql_fetch_assoc($resultadoCategoria)) { $idCatPrato = $linhaCategoria["idCatPrato"]; $NomeCatPrato = $linhaCategoria["NomeCatPrato"]; echo"<li><a data-isotope-filter='$idCatPrato' data-isotope-group='gallery' href='#' class='btn-shape-circle btn active'>$NomeCatPrato</a></li>"; } /*End while categoria*/ ?> </ul> </div> </li> </ul> </div> </div> </div> <div class="cell-xs-12 offset-top-40"> <!-- Isotope Content--> <div data-isotope-layout="fitRows" data-isotope-group="gallery" class="row isotope isotope-menu isotope-menu-offsets"> <?php /* Pratos */ $consultaPratos = "SELECT a.idPrato, a.maisAmados, a.resumoPrato, a.tituloPrato, a.valorB_Prato, b.foto FROM tb_pratos a LEFT JOIN galeria b ON b.idPrato = a.idPrato WHERE a.idCatPrato = $idCatPrato AND a.status = 's'"; $resultadoPratos = mysql_query($consultaPratos) or die("Erro ao acessar base de dados de pratos");; while ($linhaPratos = mysql_fetch_assoc($resultadoPratos)) { $valorPrato = $linhaPratos["valorB_Prato"]; $idPrato = $linhaPratos["idPrato"]; $maisAmados = $linhaPratos["maisAmados"]; $resumoPrato = $linhaPratos["resumoPrato"]; $tituloPrato = $linhaPratos["tituloPrato"]; $imagemProduto = $linhaPratos["foto"]; if ($imagemProduto == ""){ $imagemProduto = "no-image.png"; } $foto = "../sistema/imagens/thumb/".$imagemProduto; echo "<div data-id='$idPrato' data-name='$tituloPrato' data-price='$valorPrato' data-qtde='1' data-filter='$idCatPrato' class='col-xs-12 col-sm-6 isotope-item'> <div class='thumbnail-menu-modern thumbnail-menu-modern-horizontal'> <div class='unit unit-lg-horizontal unit-spacing-sm unit-middle'> <div class='unit-left'> <figure> <img src='$foto' alt='' width='310' height='260' class='img-responsive'/> </figure> </div> <div class='unit-body'> <div class='caption text-center'> <h5>$tituloPrato</h5> <p class='text-italic'>$resumoPrato</p>"; if ( $statusAtiva == "s") { echo "<a class=\"button white-btn clicked\" href=\"javascript:Cart('$idPrato', 'add');\"> <span class='desk'>Adicionar</span> <span class='mob'><i class='fa fa-check'></i></span> </a>"; } echo "<p class='price'>$valorPrato</p><a href='shop-single.html' class='btn btn-shape-circle btn-burnt-sienna offset-top-15'>Pedir</a> </div> </div> </div> </div> </div>";} ?> </div> </div> </div> </section>  
    • Por Handrix
      Boa tarde galera do fórum iMasters!
       
      Estou com um pequeno problema ao percorrer um array multidimensional. O array que tenho para percorrer é esse:
      array:8 [▼ "name" => array:3 [▼ 0 => "101" 1 => "102" 2 => "103" ] "gate" => array:3 [▼ 0 => "1" 1 => "1" 2 => "1" ] "chairs_initial" => array:3 [▼ 0 => "80" 1 => "161" 2 => "242" ] "chairs_final" => array:3 [▼ 0 => "160" 1 => "241" 2 => "322" ] "tickets_avaliable" => array:3 [▼ 0 => "80" 1 => "80" 2 => "80" ] "price_full" => array:3 [▼ 0 => "40" 1 => "40" 2 => "40" ] "price_half" => array:3 [▼ 0 => "20" 1 => "20" 2 => "20" ] "plant_sector" => array:3 [▼ 0 => UploadedFile {#291 ▶} 1 => UploadedFile {#303 ▶} 2 => UploadedFile {#287 ▶} ] ] O que preciso fazer nele é tratar os dados para realizar um insert na tabela do meu banco de dados, estou realizando o foreach da seguinte maneira:
      <?php foreach ($temp_sectors as $i => $temp) { foreach ($temp as $j => $val) { $sec[$j] = $val; dd($sec); } } Porém o meu retorno é apenas da primeira posição no caso:
      0 => "101" Mas o que eu gostaria de fazer é agrupar os sub-conjuntos para inserir exemplo:
      array:0 [▼ "name" => "101" "gate" => "1" "chairs_initial" => "80" ... ] array:1 [▼ "name" => "102" "gate" => "1" "chairs_initial" => "161" ... ] array:2 [▼ "name" => "103" "gate" => "1" "chairs_initial" => "242" ... ] Não sei se ficou clara minha saída mas qualquer dúvida estou a disposição!
      Realmente não sei o que estou errando ou não terminando :/
       
       
      Abraços!
    • Por Wanderson Moreira
      tenho uma tabela no banco que tem os campos empresa, executor, e tempo (no formato time( (00:00:00.000000))

      eu consigo selecionar todas as empresas de um determinado executor, até ai facil..
      porem como posso fazer para pegar o tempo de todas as empresas desse executor para somar o total de horas?
       
      Obrigado =)


       
    • Por evandrogoncalves
      Eu preciso que o campo input tenha mais que uma linha, e tenha quebra de linha. Eu estou linkando em um código PHP onde mostrará o conteúdo atual no input e o usuário irá alterar o campo conforme queira, porém quando o texto é longo fica difícil achar o erro por aparecer tudo somente em uma linha. OBS : Tentei usar o TEXTAREA porém não consigo visualizar os dados, só escrever. 
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.