Ir para conteúdo

POWERED BY:

Arquivado

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

ndias

SDK Login Facebook

Recommended Posts

Gostaria de implementar o SDK no meu site php para usuários se cadastrarem usando o login do facebook.


Para isso eu criei a minha API e quero obter as permissões como o nome, localização, e-mail, sexo e data de aniversário...


Já consegui fazer carregar os dados na input dessa forma:




// Load the SDK asynchronously
(function(thisdocument, scriptelement, id) {
var js, fjs = thisdocument.getElementsByTagName(scriptelement)[0];
if (thisdocument.getElementById(id)) return;


js = thisdocument.createElement(scriptelement); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js"; //you can use
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));


window.fbAsyncInit = function() {
FB.init({
appId : 'APP ID', //Your APP ID
cookie : true, // enable cookies to allow the server to access
// the session
xfbml : true, // parse social plugins on this page
version : 'v2.5' // use version 2.1
});


// These three cases are handled in the callback function.
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});


};


// This is called with the results from from FB.getLoginStatus().
function statusChangeCallback(response) {
if (response.status === 'connected') {
// Logged into your app and Facebook.
_i();
} 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.';
}
}


function _login() {
FB.login(function(response) {
// handle the response
if(response.status==='connected') {
_i();
}
}, {scope: 'public_profile,user_birthday,user_location,email'});
}


function _i(){
FB.api('/me', {fields: 'name,email,gender,birthday,location'}, function(response) {
document.getElementById("name").value = response.name;
document.getElementById("email").value = response.email;
document.getElementById("birthday").value = response.birthday;
document.getElementById("gender").value = response.gender;
document.getElementById("location").value = response.location.name;
});
}



Porém, eu gostaria primeiro fazer uma consulta no meu banco de dados MS SQL para verificar se já existe o e-mail cadastrado e caso positivo direcionar para uma área logada do meu site, ou, gravar em uma tabela os dados retornados da function(response), se ainda não existir o e-mail.


Sei exatamente como fazer isso. O problema é como recuperar os dados retornados da function(response) e transformá-los em uma variável php.


Já tentei colocar var name = response.name dentro da function(response) e dar um echo "<script>"+name+"</script>", mas o valor retornado é 0


Alguém pode me ajudar, por favor?


Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você passa via GET ou POST, em ajax e ai o PHP vai pegar via ajax

Boa idéia Ted...

 

Quando eu passo por POST via ajax, eu faço assim:

 

$.ajax({
type: 'POST',
url: 'Logon.php?name='+response.name+'&email='+response.email+'&birthday='+response.birthday+'&gender='+response.gender+'&location='+response.location.name,
success: function(data){
window.location = data;
}
});
Só que invés de redirecionar para a página Logon.php que recebo os dados, o ajax tá jogando para o meu diretório raiz...
você me dizer por quê? o q eu estou fazendo errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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