Jump to content
Sign in to follow this  
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í???

Share this post


Link to post
Share on other 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í????

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By fbezerra
      Como eu comparo uma data e altero uma coluna do banco. EXEMPLO: cliente, durante 90 dias ele não teve nenhum apontamento, pego a coluna status do cliente e altero INATIVO.
       
      Cliente

       
      apontamento
       

    • By kelvinferraz
      Boa tarde Devs,
       
      Estou precisando de uma ajuda, estou desenvolvendo um sistema e a ideia é publica-lo na web para os meus clientes acessarem, porém gostaria de poder realizar a cobrança de acesso a esse sistema, cobrando uma taxa  mensal, alguém já desenvolveu algo do tipo e poderia me dar uma força?
       
      A ideia é o cliente acessar o site em seguida ir em cadastre-se, (nesse ponto abrirá uma opção de forma de pagamento ainda não sei qual API tentar utilizar PagSeguro, Paypal, MercadoPago) mas enfim o cliente só consegue se registrar e acessar após a confirmação do pagamento e consequentemente no mês seguinte para manter o acesso efetuar novamente o pagamento, como se fosse uma conta de acesso Netflix.
       
      Sei que deve ser complexo tentar implementar, porém se alguém tiver um case para poder me explicar já ajudaria.
       
       
      Obrigado
       
    • By emersonnnb
      Boa tarde pessoal, sou iniciante da área e estou tendo a dificuldade em deixar o menu do sidebar aberto, na verdade não sei como fazer.
      Quando é tudo na mesma pagina ok, usa o  tag class=active funciona normal.
      mas como fazer isso chamando header.php e footer.php .
       
      Segue as paginas que utilizo
       
      pagina header.php
      <!DOCTYPE html> <html lang="pt-br">   <head>     <meta charset="UTF-8">     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">     <title>GAP</title>     <link rel="icon" href="imagem/favicon.ico">     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">     <script defer src="js/fontawesome-all.min.js"></script>     <link rel="stylesheet" href="css/fontawesome.min.css">     <link rel="stylesheet" href="css/dashboard.css"> </head>   <body>     <!------------------- navbar --------------------------->     <nav class="navbar navbar-expand navbar-dark bg-primary">         <a class="sidebar-toggle text-light mr-3">             <span class="navbar-toggler-icon"></span>         </a>         <a class="navbar-brand" href="#">GAP</a>           <div class="collapse navbar-collapse">             <ul class="navbar-nav ml-auto">                 <li class="nav-item dropdown">                     <a class="nav-link dropdown-toggle menu-header" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown">                         <img class="rounded-circle" src="imagem/icon.png" width="20" height="20"> &nbsp;<span class="d-none d-sm-inline">Usuário</span>                     </a>                     <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink">                         <a class="dropdown-item" href="#"><i class="fas fa-user"></i> Perfil</a>                         <a class="dropdown-item" href="logout.php"><i class="fas fa-sign-out-alt"></i> Sair</a>                     </div>                 </li>             </ul>         </div>     </nav>     <!------------------- Menu sidebar --------------------------->     <div class="d-flex">         <nav class="sidebar">             <ul class="list-unstyled">                 <li><a href="#"><i class="fas fa-tachometer-alt"></i> Dashboard</a></li>                 <li>                     <a href="#submenu1" data-toggle="collapse">                         <i class="fas fa-user"></i> Usuário                     </a>                     <ul id="submenu1" class="list-unstyled collapse">                         <li><a href="usuario_cadastrar.html"><i class="fas fa-user-plus"></i> Novo </a></li>                         <li><a href="usuario_listar.php"><i class="fas fa-users"></i> Usuários </a></li>                     </ul>                 </li>                 <li>                     <a href="#submenu2" data-toggle="collapse"><i class="fas fa-list-ul"></i> Produtos</a>                     <ul id="submenu2" class="list-unstyled collapse">                         <li><a href="#"><i class="fas fa-tags"></i> Cadastrar</a></li>                         <li><a href="#"><i class="far fa-list-alt"></i> Listar </a></li>                     </ul>                 </li>                 <li>                     <a href="#submenu3" data-toggle="collapse"><i class="fas fa-folder"></i> Categoria</a>                     <ul id="submenu3" class="list-unstyled collapse">                         <li><a href="#"><i class="fas fa-folder-plus"></i> Cadastrar</a></li>                         <li><a href="#"><i class="fas fa-folder-open"></i> Listar </a></li>                     </ul>                 </li>                 <li>                     <a href="#submenu4" data-toggle="collapse"><i class="fas fa-truck"></i> Fornecedor</a>                     <ul id="submenu4" class="list-unstyled collapse">                         <li><a href="#"><i class="fas fa-tags"></i> Cadastrar</a></li>                         <li><a href="#"><i class="far fa-list-alt"></i> Listar </a></li>                     </ul>                 </li>                 <li><a href="logout.php"><i class="fas fa-sign-out-alt"></i> Sair</a></li>             </ul>         </nav>  
      pagina teste.php
      <?php include "header.php"; ?>   <div class="content p-1">     <div class="list-group-item">         <div class="d-flex">             <div class="mr-auto p-2">                 <h2 class="display-4 titulo">Cadastrar Usuário</h2>             </div>         </div>         <hr>         <form action="usuario_include.php" method="GET">             <div class="form-row">                 <div class="form-group col-md-6">                     <label><span class="text-danger">*</span> Nome</label>                     <input name="nome" type="text" class="form-control" id="nome" placeholder="Nome Completo" required>                 </div>                 <div class="form-group col-md-6">                     <label><span class="text-danger">*</span> E-mail</label>                     <input name="email" type="email" class="form-control" id="email" placeholder="Seu e-mail" required>                 </div>             </div>             <div class="form-row">                 <div class="form-group col-md-6">                     <label><span class="text-danger">*</span> Senha</label>                     <input name="senha" type="password" class="form-control" id="senha" placeholder="A senha com mínimo de 6 caracteres" required minlength="6">                 </div>                 <div class="form-group col-md-6">                     <label><span class="text-danger">*</span> Confirmação de Senha</label>                     <input name="conf_senha" type="password" class="form-control" id="conf_senha" placeholder="Confirmar a senha" required required minlength="6">                 </div>             </div>               <div class="form-row">                 <div class="form-group col-md-6">                     <label>Endereço</label>                     <input name="endereco" type="text" class="form-control" id="endereco" placeholder="Rua João...">                 </div>                 <div class="form-group col-md-2">                     <label>Número</label>                     <input name="numero" type="text" class="form-control" id="numero" placeholder="123">                 </div>                 <div class="form-group col-md-4">                     <label>Complemento</label>                     <input name="complemento" type="text" class="form-control" id="complemento" placeholder="Sala, Apartamento">                 </div>             </div>               <div class="form-row">                 <div class="form-group col-md-5">                     <label>Estado</label>                     <select name="estado" id="estado" class="form-control">                         <option selected>Selecione</option>                         <option>...</option>                     </select>                 </div>                 <div class="form-group col-md-5">                     <label>Cidade</label>                     <select name="cidade" id="cidade" class="form-control">                         <option selected>Selecione</option>                         <option>...</option>                     </select>                 </div>                 <div class="form-group col-md-2">                     <label>CEP</label>                     <input name="cep" type="text" class="form-control" id="cep" placeholder="xx.xxxx-xxx">                 </div>             </div>             <div class="form-row">                 <div class="form-group col-md-2">                     <label>Login</label>                     <input name="login" type="text" class="form-control" id="login" placeholder="Insira um login" required>                 </div>                 <div class="form-group col-md-2">                     <label>Nivel de Acesso</label>                     <select name="nivel_acesso" id="nivel_acesso" class="form-control">                         <option selected>"Selecione"</option>                         <option value="1">Administrador</option>                         <option value="2">Usuario</option>                     </select>                 </div>                 <div class="form-check col-md-1 p-5">                     <input class="form-check-input" name="status" type="checkbox" value="ativo" id="status">                     <label class="form-check-label" for="defaultCheck1">                         Ativo                     </label>                 </div>                 <p>             </div>             <span class="text-danger">*</span> Campo Obrigatório             </p>             <button type="submit" class="btn btn-success">Cadastrar</button>         </form>     </div> </div> </div> </div> <!------------------- Modal para confirmar a exclusão de um registo---------------------------> <div class="modal fade" id="apagarRegistro" tabindex="-1" role="dialog" aria-labelledby="apagarRegistro" aria-hidden="true">     <div class="modal-dialog" role="document">         <div class="modal-content">             <div class="modal-header bg-danger text-white">                 <h5 class="modal-title" id="exampleModalLabel">Excluir item</h5>                 <button type="button" class="close" data-dismiss="modal" aria-label="Close">                     <span aria-hidden="true">&times;</span>                 </button>             </div>             <div class="modal-body">                 Tem certeza que deseja excluiir o item selecionado?             </div>             <div class="modal-footer">                 <button type="button" class="btn btn-success" data-dismiss="modal">Cancelar</button>                 <button type="button" class="btn btn-danger">Apagar</button>             </div>         </div>     </div> </div>   <?php include "footer.php"; ?>
    • By JoãoRicardo.Lima
      Olá pessoal.
      Pessoal como eu faço o roteamento dos meus arquivos no meu projeto, pois sempre que inicio o meu servidor embutido do php em um diretório especifico, ele obviamente não "enxerga" as outras pastas, por exemplo. Eu tenho minha pasta com as views, mas qualquer link que eu coloco em uma view para ser redirecionado para ou view, o servidor não consegue achar o caminho, pois ele não conhece as outras pasta. Como eu faria este roteamento?.
    • By Pitag346
      Olá pessoal, tudo bem ? Estou com um probleminha, espero que me ajudem...
       
      Seguinte, tenho uma tabela onde faço a exibição de alguns dados, tais como:
       
      NOME, 
      QUANTIDADE, 
      VALOR
       
      Eu quero buscar o valor, em outra tabela e exibir dentro desse while. Porem, ele está exibindo em todos os resultados.
      Seguinte, 
      Cada usuário que efetuar uma vendo do produto tal, é salvo na tabela VENDIDOS, onde o mesmo armazena o "ticket_promote_id". 
      Ao fazer o while das vendas, quero pegar o valor do produto em outra tabela com o "ticket_promote_id" que mencionei acima, porem ao fazer isso, ele me retorna o valor de um produto em todos os resultados do while. 
       
      Alguém sabe por que ? Segue meu código abaixo:
      $valueTotali = 0; while($dados = mysqli_fetch_assoc($sql_promoters)){ $user = $dados['id']; $sqlIngress = $conn->query("SELECT * FROM vendidos WHERE ticket_promote_id = '$user' "); $cont = $sqlIngress->num_rows; if($cont > 0){ $dadosIngress = mysqli_fetch_assoc($sqlIngress); $loteId = $dadosIngress['ticket_lote_id']; $sqlLote = $conn->query("SELECT * FROM ingress WHERE lote_id = '$loteId' "); while($data = mysqli_fetch_assoc($sqlLote)){ $valueTotali += $data['lote_preco']; } }  
      Segue a imagem da tabela com o mesmo valor sendo replicado em todos os resultados:

       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.