Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Recommended Posts

Olá pessoal, beleza?

 

Estou criando um site de entretenimento, e gostaria de fazer algo para aumentar os likes da página no facebook, desse site.

 

Pensei em criar flutuante com o botão de curtir, mas ficaria chato, pois uma vez que o usuário já tenha curtido, a div sempre ficará enchendo a tela do cara.

 

Encontrei um site que faz essa função de forma perfeita, da uma olhada lá por favor: http://br.vonvon.me/quiz/534

 

Não sei como ele ler que a pessoa esta logado no facebook ou não. Acho que é pelo aplicativo, quando entra com o facebook para testar.

 

Então... quando curti a página, essa barra no topo não aparece mais, pois já curtiu, se descurtir, ela volta a aparecer.

 

Eu já tenho uma aplicativo que puxa as informações do usuario: http://testesdivertidos.com

só não sei como fazer essa questão da DIV que contem o botão do like sumir, após curtir.

 

Toda ajuda é valida!

Desde já agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Wellington,

Você pode fazer isso de algumas maneiras e vou deixar duas:

  • Você pode salvar um cache eterno, se ele clicar em curtir, a aba fecha e o cache segura ela fechada pelo resto da vida.
  • Você pode atrelar a curtida a conta do facebook, mas o problema é que se ele não estiver logado, o botão vai aparecer.

A do cache resolve, não?

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Grande Henrique, beleza?

 

Bom, acho que para esse meu caso, a segunda opção é a melhor, pois se o usuário não estiver logado no facebook, nada poderá fazer dentro do site. Os testes dependem exclusivamente dos dados do usuario para poder rodar.

 

Então, essa parada de aparecer caso esteja deslogado é uma boa.

 

Mas vem a grande questão, como fazer? rsrs

 

Manjo pouquíssimo de programação. teria alguma forma mastigada ai pra passar?

 

Abraço cara!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Wellington, faz tempo que não te via por esses lados do fórum.

Essa questão fica um pouco fora de HTML/CSS, mas vou tentar te ajudar da melhor forma possível. Se você precisa saber se o usuário está logado ou não, você primeiro vai precisar estudar e entender a API do Facebook SDK PHP. Ela vai ser a responsável por identificar se um usuário X está logado no facebook.

Como não tenho tanto tempo agora (estou de saída aqui), vou deixar um post explicando como funciona o SDK e como configurar ele na sua página pra identificar se um usuário está logado.

Veja aqui: http://stackoverflow.com/questions/25201096/check-if-facebook-user-is-logged-in-to-app-with-php-sdk

 

Se não conseguir implementar, nos avise que tentaremos solucionar a sua questão.

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

hehehe, estou sendo de olho nas coisas, mas prefiro deixar as respostas para os profissionais, tipo você! :D

 

Bom, vou dar uma estudada nesse material. Eu já tenho uma aplicação no meu site, que puxa nome do usuário e foto, e acho que ela ver se o cara ta logado no facebook também!

 

Vou vou estudar o material que me passou e retorno aqui!

 

Vlw Henrique! abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Henrique, caso possa me ajudar, por favor!

 

Eu dei uma olhada boa nesse material que me mandou, e notei que é mais ou menos o mesmo que já tenho em minha aplicação. Minha aplicação esta rodando legal http://testesdivertidos.com

 

Acho que só preciso saber como puxar a função que identifica se o usuario curtiu ou não a página, para exibir ou não o botão para ele, sabe me informar isso?

 

Seria:

Logado e curtiu a página, botão não aparece.

Logado e NÃO curtiu a página, botão aparece.

 

Caso precise dar uma olhada, aqui está minha ligação:

<script>
    // 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#xfbml=1&version=v2.6&appId=1065386780209103";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));

  // Isto é chamado com os resultados a partir de FB.getLoginStatus ().
  var urlResolved;
  var pageResolved;
  function statusChangeCallback(response) {
    console.log('statusChangeCallback');
    console.log(response);
    // O objeto de resposta é retornado com um campo de status que permite que o
    // App saber o status de login atual da pessoa.
    // A documentação completa sobre o objeto de resposta pode ser encontrada na documentação
    // Para FB.getLoginStatus ().
//        document.getElementById('status').innerHTML = '<?php //echo '<img src='.$values2[0].'>'; ?>//';
//        document.getElementById('shareBtn').style.display = "none";
        if (response.status === 'connected') {
            // Logado em sua aplicação e Facebook.
        //        testAPI(response.authResponse.accessToken);
            console.log('Welcome!  Fetching your information.... ');
            FB.api('/me?fields=birthday,email,name,age_range&access_token=' + response.authResponse.accessToken, function(apiResponse) {
                console.log('Successful login for: ' + apiResponse.name);
                document.getElementById('loginBtn').innerHTML = '';
                urlResolved = '<?php echo $img1; ?>'+apiResponse.id+'&name='+apiResponse.name+'<?php echo $img2; ?>';
                pageResolved = '<?php echo $page1; ?>'+apiResponse.id+'<?php echo $page2; ?>'+'/'+apiResponse.name.replace(' ','-')+'<?php echo $page3; ?>';

        //            console.log(pageResolved);
//                document.getElementById('status').innerHTML = '<img src="'+urlResolved+'">';
//                document.getElementById('shareBtn').style.display = "initial";
                document.getElementById('testeBtn').style.display = "initial";
            });
        } else {
            // A pessoa não está logado no Facebook, por isso não temos certeza se
            // Eles são registrados para este aplicativo ou não.
            document.getElementById('status').innerHTML = '<?php echo '<img src='.$values2[0].'>'; ?>';
            document.getElementById('shareBtn').style.display = "none";
            document.getElementById('testeBtn').style.display = "none";
        }
  }


  // This function is called when someone finishes with the Login
  // Button.  See the onlogin handler attached to it in the sample
  // code below.
  window.fbAsyncInit = function() {
      FB.init({
        appId       : 'xxxxxxxx',
        status      : false,
        cookie      : true,  // enable cookies to allow the server to access the session
        xfbml       : true,  // parse social plugins on this page
        version     : 'v2.6' // use version 2.2
      });

      FB.Event.subscribe('auth.authResponseChange', function(response) {
          statusChangeCallback(response);
      });
  };
</script>

Lembrando que eu peguei o login padrão lá do devloper do facebook, e um amigo me ajudou com as funções.

 

Mas ele não estou podendo contatar ele no momento.

 

Obrigado desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Wellington,

Desculpa a demora, mas vamos lá!

Você tem essa função no final do código:

 window.fbAsyncInit = function() {
      FB.init({
        appId       : 'xxxxxxxx',
        status      : false,
        cookie      : true,  // enable cookies to allow the server to access the session
        xfbml       : true,  // parse social plugins on this page
        version     : 'v2.6' // use version 2.2
      });

      FB.Event.subscribe('auth.authResponseChange', function(response) {
          statusChangeCallback(response);
      });
  };

Altere o STATUS para TRUE e depois vamos programar um pouquinho pra saber se o usuário curtiu ou não sua página.

Segue o código JS:

$(document).ready(function() {
   FB.login(function(response) {
      if ( response.session ) {
         var user_id = response.session.uid;
         var page_id = "ID da sua página do face";
         var query = "SELECT uid FROM page_fan WHERE page_id="+page_id+"and uid="+user_id;
         var exec_query = FB.Data.query(query);
         
         exec_query.wait(function(rows) {
            if ( rows.length == 1 && rows[0].uid == user_id ) {
               // Aqui o cara já curtiu sua página.
               $('#div_do_like').hide();
            } else {
               // Aqui o cara não curtiu sua página.
               $('#div_do_like').show();
            }
         });
      } else {
         // Aqui diz que o usuário não está logado no facebook, então você pode deixar o botão de like aparecendo, assim pede pra ele se conectar.
      }
   });
});

Acho que isso deve funcionar ahushuahusahusahus.

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá parceiro, obrigado mais uma vez!

 

Fiz o que tu falou, mas não rolou o efeito de esconder a div, caso o cada curta, veja por favor se fiz correto

 

A função que faz a ligação ao facebook, está dentro do meu single.php, tem algum problema?

Troquei o FALSE, por TRUE: http://puu.sh/pTxRE/41617fa475.png

 

No meu header eu coloquei:

<head>

<script type="text/javascript">
    $(document).ready(function() {
       FB.login(function(response) {
          if ( response.session ) {
             var user_id = response.session.uid;
             var page_id = "1107649722591782";
             var query = "SELECT uid FROM page_fan WHERE page_id="+page_id+"and uid="+user_id;
             var exec_query = FB.Data.query(query);
             
             exec_query.wait(function(rows) {
                if ( rows.length == 1 && rows[0].uid == user_id ) {
                   // Aqui o cara já curtiu sua página.
                   $('#div_do_like').hide();
                } else {
                   // Aqui o cara não curtiu sua página.
                   $('#div_do_like').show();
                }
             });
          } else {
             // Aqui diz que o usuário não está logado no facebook, então você pode deixar o botão de like aparecendo, assim pede pra ele se conectar.
          }
       });
    });
</script>

</head>

<body>
	<style type="text/css">
		#div_do_like{width: 100%; min-height: 30px; background: #3B5998; line-height: 30px;}
		.content-topo{margin: auto; max-width: 1000px;}
		.content-topo-left{float: left; width: 50%; text-align: right; color: #fff; font-weight: bolder; font-size: 15px;}
		.content-topo-right{float: right; width: 50%; height: 25px;}		
	</style>

	<div id="div_do_like">
		<div class="content-topo">
			<div class="content-topo-left">
				Nós gostamos de você. Curta a gente de volta!
			</div>
			<div class="content-topo-right">
				<div class="fb-like" data-href="https://facebook.com/testesdivertidos" data-layout="button_count" data-action="like" data-show-faces="false" data-share="false"></div>
		    </div>
		</div>
	</div>
</body>

Mas não consegui fazer rodar.

 

A intenção ai no código, é após curtir, esconder toda essa div azul que é a #div_do_like

da uma olhada: http://testesdivertidos.com

 

Muito obrigado henrique! Abraço!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Wellington, beleza?

Dei uma pesquisada em tópicos semelhantes e encontrei as seguintes possíveis soluções:

Creio que o segundo link consiga solucionar grande parte do seu problema.

Lembre-se de fazer o seguinte... Se o seu site está em wordpress, chame primeiro a função da API abaixo da chamada do jQuery e então chame a função condicional. Ex.:

   <script src="JQUERY"></script>
   <script src="FACEBOOK API"></script>
   <script src="FUNÇÃO"></script>
</body>
</html>

Eu não entendo como foi organizado o seu projeto, então fica difícil tentar uma solução direta.

Abraços brother!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Henrique, tranquilo por aqui, na luta!

 

Obrigado por sua boa vontade em ajudar, parceiro!

 

Vou dar uma estudada na função e retorno!

 

Abraço!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa Henrique, tranquilo por aqui, na luta!

Obrigado por sua boa vontade em ajudar, parceiro!

Vou dar uma estudada na função e retorno!

Abraço!!!!

Fa Wellington, belezA!! Voce conseguiu resolver essa bucha?? Me ajude, eu preciso disso tambem em meu wordpress!! Valeu!!

  • 0

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por Thiago Duarte
      Oi, gostaria de arrastar imagem e ao soltar formar bloco html, meu bloco de html ficaria com nome, content-1.html, content-2.html, etc
       
      Alguem pode me ajudar?
    • Por juliosonic
      Boa noite..
      Estou desenvolvendo um site de https://www.maithunatantra.com.br/ e estou com um duvida sobre o menu de navegação da versão mobile.
      O menu que tem o dropdown "Terapeutas" e "Terapias" quando clico em cima ele expande como deve ser, mas quando clico denovo para recolher os submenus
      nao acontece nada.. segue o trecho do codigo do menu..
      <div class="collapse navbar-collapse" id="navbarsExample09">             <ul class="navbar-nav ml-auto">               <li class="nav-item  active"><a class="nav-link" href="index.html">Home</a></li>               <li class="nav-item  active"><a class="nav-link" href="about-us.html">Quem Somos</a></li>               <li class="nav-item dropdown1">                     <a class="nav-link dropdown-toggle" data-toggle="dropdown1" href="#">Terapeutas</a>                     <ul class="dropdown-menu">                         <li><a class="dropdown-item" href="terapeuta-julio-cezar.html">Julio Cezar</a></li>                         <li><a class="dropdown-item" href="terapeuta-pamela-priscila.html">Pamela Priscila</a></li>                     </ul>                                    </li>               <li class="nav-item dropdown">                     <a class="nav-link dropdown-toggle" data-toggle="dropdown1" href="#">Terapias</a>                     <ul class="dropdown-menu" aria-labelledby="dropdown01">                         <li><a class="dropdown-item" href="o-que-e-reiki.html">O que é Reiki</a></li>                         <li><a class="dropdown-item" href="beneficios-reiki.html">Benefícios do Reiki</a></li>                         <li><a class="dropdown-item" href="principios-reiki.html">Princípios do Reiki</a></li>                         <li><a class="dropdown-item" href="animais-reiki.html">Reiki em Animais</a></li>                         <li><a class="dropdown-item" href="animais-reiki.html">Estudos Sobre Reiki</a></li>                         <li><a class="dropdown-item" href="terapia-massagem-tantrica.html">Terapia Tântrica</a></li>                     </ul>               </li>               <li class="nav-item  active"><a class="nav-link" href="blog.html">Blog</a></li>                <li class="nav-item"><a class="nav-link" href="contato.html">Contato</a></li>             </ul>         </div>  
      Massagem Tantrica em Curitiba
      Tantra Curitiba
      Massagem Tântrica
      Tantra
      Julio Darshan

      Obrigado
      Att
      Julio Cezar
       
       
       
    • Por belann
      Olá!
       
      Estou fazendo o upload de arquivos com fetch dessa forma
      fetch(url, {
              method: 'POST',
              headers: {'Content-Type': 'multipart/form-data',},
              body: formData 
          }).catch((error) => (console.log("Problemas com o Upload"), error));
       
      estou usando input type=file
      e criando uma const formData = new FormData(); 
      mas não faz e não dá nenhum erro.
      estou fazendo o upload com a url="http://localhost/dashboard/dados".
×

Informação importante

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