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 emmanuelsiqueira30
      Pessoal não estou conseguindo enviar a informação da última coluna da tabela convidado, é o seguinte eu quero pegar o id do responsavel e incluir no banco convidados deste responsavel indexado.
      Por exemplo cadastro um responsavel depois passa para página seguinte com o id do responsavel em uma variavel, ai insero os dados do convidado e clico em incluir o que deveria acontecer é inserir os dados do convidado mais o id do responsavel no banco de dados, mas não estou conseguindo passar pela propriedade value do type="hidden".
       
      <style> body { background-image: url("imagens/bg_adm.jpg"); background-repeat: no-repeat; background-size: cover; } .btn-success{ height: 100px; width: 300px; margin: 20px -150px; position:relative; top:20%; left:50%; } .btn-primary{ height: 50px; width: 200px; margin: 0px -100px; position:relative; top:20%; left:50%; } .btn-warning{ height: 100px; width: 300px; margin: 20px -150px; position:relative; top:20%; left:50%; } .btn-dark{ height: 100px; width: 200px; margin: 20px -150px; position:relative; top:20%; left:50%; } </style> <?php include("conexao.php"); for( $i=0; $i<count($_POST['id_mesa']); $i++ ) { // INSERINDO NO MYSQL $query = "INSERT INTO responsavel (nome_pessoa, fonecel_pessoa, id_mesa ) VALUES ( '".$_POST['nome_pessoa']."', '".$_POST['fonecel_pessoa']."', '".$_POST['id_mesa'][$i]."' )"; $queryExec = mysqli_query($con,$query) or die('ERRO ao inserir registro no Banco'); } /* if ($queryExec) { echo "<script>alert('Cadastro realizado com sucesso.');</script>"; } else { echo "<script>alert('Erro ao cadastrar.');</script>"; } */ $con->close(); ?> <!DOCTYPE html> <html> <head> <?php include("sessao.php"); ?> <title>ControlTable</title> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <!-- jQuery library --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <!-- Latest compiled JavaScript --> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> </head> <body> <div class="container-fluid"> <div class="row"> <form action="insere-conv.php" method="POST"> <div class="col-xs-12"> <image class="image-responsive" src="imagens/logo.png" width="70%" style="width: 70%; margin: 0% 15%;"></image> </div> <div class="col-xs-12"> <?php include('conexao.php'); $resp = mysqli_query($con,"SELECT * FROM responsavel ORDER BY id_pessoa DESC LIMIT 1;"); while ($linhas_resp = mysqli_fetch_assoc($resp)) { ?> <strong>ID: </strong><?=$linhas_resp['id_pessoa']?> NOME: <?=$linhas_resp['nome_pessoa']?> <?php } //fim do while ?> </div> <div class="col-xs-12"> <h4><strong>Cadastre os convidados:</strong></h4> <div class="col-xs-12"> <div class="form-group"> <label for="nome_convidado">NOME:</label> <input type="text" class="form-control" id="nome_convidado" name="nome_convidado"> </div> <div class="form-group"> <label for="fone_cel">CONTATO:</label> <input type="text" class="form-control" id="fone_cel" name="fone_cel"> </div> <input type="hidden" id="id_responsavel" name="id_responsavel" value="<?=$linhas_resp['id_pessoa']?>"> </div> <div class="container-fluid"> <h4><strong>Lista de convidados</strong></h4> <table class="table table-striped"> <thead> <tr> <th>NOME</th> <th>CONTATO</th> </tr> </thead> <tbody> <?php include('conexao.php'); $resp1 = mysqli_query($con,"SELECT * FROM responsavel ORDER BY id_pessoa DESC LIMIT 1;"); while ($linhas_resp1 = mysqli_fetch_assoc($resp1)) { $idresp = $linhas_resp1['id_pessoa']; } $resp2 = mysqli_query($con,"SELECT * FROM convidado WHERE id_convidado =".$idresp.";"); while ($linhas_resp2 = mysqli_fetch_assoc($resp2)) { ?> <tr> <td style="font-size: 12px;"><?=$linhas_resp2['nome_convidado']?></td> <td><?=$linhas_resp2['fone_cel']?></td> </tr> <tr> </tr> <tr> </tr> <?php } //fim do while ?> </tbody> </table> </div> <button type="submit" class="btn btn-primary">INCLUIR</button> </form> </div> </div> </div> </div> </div> </body> </html> PHP
      <?php include("conexao.php"); // INSERINDO NO MYSQL $query = "INSERT INTO convidado (nome_convidado, fone_cel, id_responsavel) VALUES ('".$_POST['nome_convidado']."', '".$_POST['fone_cel']."', '".$_POST['id_responsavel']."')"; echo $query; $queryExec = mysqli_query($con,$query) or die('ERRO ao inserir registro no Banco'); /* if ( $queryExec) { echo "<script>alert('Cadastro realizado com sucesso.'); location='cad-conv.php';</script>"; } else { echo "<script>alert('Erro ao cadastrar.'); location='cad-conv.php';</script>"; } */ $con->close(); ?>  
    • Por nosredna
      Olá amigos, vocês poderiam me ajudar?
       
      Eu tenho a input abaixo em PHP, quando eu acabar de digitar algo eu desejo que ela selecione o texto digitado automaticamente. É possível? Como eu faria?
      Exemplo abaixo:

       
      Agradeço a ajuda. Valeuuuu.
    • Por Robson Augusto
      Bom dia não sei se alguém pode me ajudar, pois nao conheço sobre programação, mas me identifico....
       Meu problema é seguinte tenho uma site que configurei no app osclass, site de anúncios, tem opção de anúncios Premium e destacar o anúncio, mas a função destacar tem que fazer configuração conforme se pede abaixo....
       
       
       
      Configurando seu tema
      Para poder usar a característica destacar anúncio, você precisa fazer algumas mínimas modificações no seu tema.:
      Na página de pesquisa do template, você precisa adicionar o seguinte atributo classe na div do anúncio
                         class="<?php osc_run_hook("highlight_class"); ?>"
                    
       
      o que sei é que essa class deve trabalhar em armonia com    <div class="estate"> , mas qdo coloco o código que se pede junto dela, o anúncio se destaca mas há uma desconfiguração dos anúncios...
       
       

       
      <?php $i = 0; ?>
              <?php while(osc_has_items()) { $i++; ?>

                     <div class="estate">
                         <div class="left" >
        
                            <?php if( osc_price_enabled_at_items() ) { ?><div class="price"><?php echo osc_item_formated_price() ; ?></div> <?php } ?>
                         <a href="<?php echo osc_item_url() ; ?>"><?php if( osc_images_enabled_at_items() ) { ?>
                             <?php if( osc_count_item_resources() ) { ?>
                                 <img src="<?php echo osc_resource_thumbnail_url() ; ?>" title="<?php echo osc_item_title(); ?>" alt="<?php echo osc_esc_html(osc_item_title()); ?>"/>
                             <?php } else { ?>
                                 <img src="<?php echo osc_current_web_theme_url('images/no_photo.gif') ; ?>" />
                             <?php } ?>
                   
                         <?php } ?>
                         </a>
                     </div>
                     <div class="right">
                         <div class="title">
                             <h3><a href="<?php echo osc_item_url() ; ?>"><?php if(strlen(osc_item_title()) > 101){ echo mb_substr(osc_item_title(), 0, 100,'UTF-8').'...'; } else { echo osc_item_title(); } ?></a></h3> </div>
                              <div class="list_des">
                              <?php if(strlen(osc_item_description()) > 351){ echo strip_tags( mb_substr(osc_item_description(), 0, 350,'UTF-8').'...'); } else { echo strip_tags (osc_item_description()); } ?>
                              </div>
                          <div class="more" style="display:inline;">
                         
                         <div class="city" style="float:left;">&nbsp;&nbsp;<i class="fa fa-map-marker fa-lm2"></i>&nbsp;<?php echo osc_item_city();?></div>
                         <div class="data" style="float:right;"><i class="fa fa-clock-o fa-lm2"></i>&nbsp;<?php echo osc_format_date(osc_item_pub_date()); ?></div>
                             

                          </div>
                     </div>
                 </div>
                  <?php if( $i == 5 ) { ?>
                  <?php osc_run_hook('search_middle'); ?>
      <?php } ?>
             <?php } ?>
              <br>


       
       
    • Por Renan Miller
      Bom dia pessoal, desenvolvi um pequeno sistema que esta rodando em localhost.
      Minha duvida é: É possível criptografar meu código e manter o funcionamento do sistema normalmente?
      Por exemplo, o sistema funciona normalmente porem quando abrir o arquivo cadastrar.php o mesmo esteja cifrado.
       
      Muito obrigado! 
    • Por leonardo021970
      Olá tenho uma variavel de uma pagina e desejaria excluir o seguinte texto (contido na variavel $retirar) dela
      $retirar = '<center> <a href="https://href.li/?http://hh-btr.com/r?token=TEXTOQUEVARIArel="noreferrer nofollow" target="_blank"> <img border="TEXTOQUEVARIA" src="TEXTOQUEVARIA" width="TEXTOQUEVARIA" height="TEXTOQUEVARIA"><br>TEXTOQUEVARIA</a></center>'; Onde TEXTOQUEVARIA varia constantemente :D   Escrevi um codigo pesquisando sobre expressões regulares porem não sei aplica-las   $retirar = '<center> <a href="https://href.li/?http://hh-btr.com/r?token=(.+) rel="noreferrer nofollow" target="_blank"> <img border="0" src="(.+)" width="474" height="120"><br>(.+)</a></center>'; $exibir = preg_replace($retirar, '', $exibir); print_r($exibir);  
       
×

Informação importante

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