Не удается загрузить изображение с Facebook iframe - PullRequest
1 голос
/ 23 декабря 2011

Я разработал простое приложение для Facebook, в котором я объединяю имя пользователя Facebook с изображением. Вывод этого кода правильный, но когда я пытаюсь загрузить этот файл, загружается какое-то недопустимое изображение (показывать недопустимое изображение при открытии).

Вот мой код для файла image.php

<?php 
header("Content-Type: image/png"); 
include_once 'facebook.php';
include_once 'config.php';
include_once 'token.php';
$facebook = new Facebook(array(
'appId'  => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET_KEY,
));

$me = $facebook->api('/me');
$im = ImageCreateFrompng("image.png"); 
$black = ImageColorAllocate($im, 0, 0, 0); 
$start_x = 35; 
$start_y = 230; 
Imagettftext($im, 20, 0, $start_x, $start_y, $black, 'ambient.ttf', $me['name']); 
Imagejpeg($im, '', 100); 
ImageDestroy($im); 

//code to download this image
$imgDestinationPath = 'download.png';
$url = 'apps.facebook.com/myapp/image.php';
$content = file_get_contents($url);
file_put_contents($imgDestinationPath, $content);

?>

Теперь вот запутанная часть. когда я помещаю статический текст вместо $ me ['name'] и меняю $ url на mysite.com/image.php intead apps.facebook.com/myapp/image.php, тогда изображение загружается. Я также попытался изменить $ url на mysite.com/image.php с динамическим текстом, но проблема та же

1 Ответ

0 голосов
/ 23 декабря 2011

Полагаю, проблема в вызове метода api класса facebook, который, вероятно, не будет вызываться при вызове сценария через * file_get_contents *.

Попробуйте поместить имя как переменную GET в URL file_get_contents, таким образом, это будет своего рода обман, так как у вас будет динамическая статическая переменная

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...