ajax — сохранение URL-адреса изображения профиля Facebook в сеансе PHP

Я использую Facebook Javascript SDK для входа на мой сайт. После нажатия кнопки входа я отправляю имя Facebook и URL-адрес изображения профиля с помощью ajax в PHP, сохраняю имя в базе данных и назначаю URL-адрес и имя изображения профиля для переменной сеанса. Когда я передаю эту переменную сеанса на страницу профиля моего веб-сайта, я получаю правильное имя facebook, но URL-адрес изображения профиля не работает. Я получаю только половину URL. Все рядом с&Символ в URL отсутствует. Вот оригинальный URL, который я должен получить. Я получил это, отображая изображение на той же странице, что и экран входа в систему

https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xap1/v/t1.0-1/p200x200/9444_10203017119044199_1059615267418985652_n.jpg?oh=5d5c541aa8c7c99d7c5bf5ce9ec2e718&oe=54E265CB&__gda__=1420508157_9882b31d641e2b27ef486c2ee7c61ad0

Но я понимаю

https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xap1/v/t1.0-1/p200x200/9444_10203017119044199_1059615267418985652_n.jpg?oh=5d5c541aa8c7c99d7c5bf5ce9ec2e718

Таким образом, ссылка отправляется где-то посередине при отправке через ajax. Где я неправ? Вот мой Аякс и getPhoto функция

  function getUserInfo() {
FB.api('/me', function(response) {

var fbid = response.id;
var fbname = response.name;
var fbemail = response.email;
var datastring = 'fbid1=' +fbid+ '&fbname1=' +fbname+ '&fbemail1=' +fbemail+ '&fbphoto1=' +fbphoto;
$.ajax({
type: "POST",
url: "http://www.uniwink.com/landing/php_includes/fb_cred_store.php",
data:datastring,
cache:false,
success: function(data){
if(data == "success"){
window.open("profile.php","_self");
} else {
window.open("index.php","_self");
}
}
});
});
}

function getPhoto()
{
FB.api('/me/picture?type=large', function(response) {
window.fbphoto = response.data.url;
});

}`

0

Решение

Кодировать fbphoto, используя encodeURIComponent, а затем http://php.net/manual/en/function.urldecode.php в сценарии PHP при отображении значения в браузере.

var datastring = 'fbid1=' +fbid+ '&fbname1=' +fbname+ '&fbemail1=' +fbemail+ '&fbphoto1=' +encodeURIComponent(fbphoto);

и в PHP

$photourl = urldecode($photourl);
echo $photourl;
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]