Facebook javascript SDK - 如何将数据从js解析为PHP? [英] Facebook javascript SDK - how can I parse data from js to PHP?
问题描述
我想使用javascript sdk,因为facebook php sdk新版本不支持我公司的PHP版本。
Ok所以...我想将FacebookUser的电子邮件插入数据库MySQL。请查看fucntion get_Info()。我希望response.email的值解析为PHP变量并插入到MySQL中,但我不知道怎么办,因为这个变量在js函数中
我尝试过:
I want to use javascript sdk because facebook php sdk new version doesnot support my company's PHP version.
Ok so... I want to insert the email of FacebookUser to database MySQL. Please look at the fucntion get_Info(). I want the value of "response.email" parse to PHP variable and insert into MySQL, but I don't know how to do because this variable is in the js function
What I have tried:
window.fbAsyncInit = function() {
FB.init({
appId: 'xxxxxxxx', //Your appId
xfbml: true,
version: 'v2.8'
});
FB.AppEvents.logPageView();
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
document.getElementById('status').innerHTML = 'We are connected.';
document.getElementById('fb_login').style.visibility = 'hidden';
} else if (response.status === 'not_authorized') {
document.getElementById('status').innerHTML = 'We are not logged in.';
} else {
document.getElementById('status').innerHTML = 'You are not logged into Facebook';
}
});
};
(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/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
function fb_login() {
FB.login(function(response) {
if (response.status === 'connected') {
document.getElementById('status').innerHTML = 'We are connected.';
document.getElementById('fb_login').style.visibility = 'hidden';
} else if (response.status === 'not_authorized') {
document.getElementById('status').innerHTML = 'We are not logged in.';
} else {
document.getElementById('status').innerHTML = 'You are not logged into Facebook';
}
}, {
scope: 'email'
});
}
function getInfo() {
FB.api('/me', 'GET', {
fields: 'first_name,last_name,name,id,email'
}, function(response) {
var email = response.email; /////////variable that I want to send to server-side ///////////
var http = new XMLHttpRequest(); ///////////AJAX///////
var url = "new 1.php";
var data = "email=" + email;
http.open("GET", url, true);
http.onreadystatechange = function() {//Call a function when the state changes.
if(http.readyState == 4 && http.status == 200) {
alert(http.responseText);
}
}
http.send(data);
});
}
function fb_logout() {
FB.logout(function() {
document.location.reload();
});
}
HTML正文
< div id =status>< / DIV> < div id =status2>< / div>
< button onclick =getInfo()>获取信息< / button>
< button onclick =fb_login()id =fb_login>用Facebook登录< / button>
< button onclick =fb_logout()>退出< / button>
新增1.php
HTML body
<div id="status"></div> <div id="status2"></div>
<button onclick="getInfo()"> Get Info</button>
<button onclick="fb_login()" id="fb_login"> Login with Facebook </button>
<button onclick="fb_logout()"> Log out </button>
in new 1.php
<?php
if($_SERVER['REQUEST_METHOD'] == 'GET'){
$email = $_GET['email'];
echo $email;
}
?>
推荐答案
_SERVER ['REQUEST_METHOD'] =='GET'){
_SERVER['REQUEST_METHOD'] == 'GET'){
email =
_GET ['email'];
echo
_GET['email']; echo
这篇关于Facebook javascript SDK - 如何将数据从js解析为PHP?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!