У меня проблема с доступом к таким данным пользователя, как first_name, last_name, id и email, но я могу получить доступ к имени напрямую. я могу получить доступ к имени пользователя по этому коду:
function testAPI()
{
console.log('Welcome! Fetching your information.... ');
FB.api(
'/me',
'GET',
{"fields":"id,name,first_name,last_name,email"},
function(response)
{
f_id = response.id;
name = response.name;
fname = response.first_name;
lname = response.last_name;
email = response.email;
console.log('Successful login for: ' + name + "\n first name: " + fname + "\n last name: " + lname + "\n email: " + email + "\n ID: " + f_id);
document.getElementById('status').innerHTML = 'Thanks for logging in, ' + response.name + '!';
}
);
$.ajax(
{
type:"POST",
url: 'http://localhost:8080/timeline_dashboard/index.php',
// data: {f_id: f_id, name: name, fname: fname, lname: lname, email: email},
data: {name:name},
success: function(data)
{
alert(data);
}
}
);
}
$(document).ready(
function()
{
var f_id, name, fname, lname, email;
}
);
<?php //working code on index.php
// print_r($_POST);die;
if(isset($_POST['name']))
{
echo $_POST['name'];die;
}
?>
в этом коде выше я отправил значение 'name' с помощью вызова ajax и смог получить это значение с помощью метода POST для индексации. php и когда я изменяю data: {name:name},
на data: {email:email},
или что-то вроде id, first_name или last_name, я всегда получаю эту ошибку: ReferenceError: email is not defined
в консоли, что означает, что моя функция ajax не получает никакой переменной с именем email внутри области видимости TestApi (). Итак, наконец, мой вопрос заключается в том, как получить переменные, отличные от name, чтобы я мог отправлять эти переменные в качестве аргумента в данных ajax вызова И доступа по индексу. php страницы, чтобы я мог использовать эти переменные, которые я получил от $ _POST для вставить в базу данных для регистрации пользователя в моем веб-приложении? получил это из учебников на учебник Facebook