0

Facebook php SDKを使用して、ユーザーをFacebookアカウントに登録しています。必要なすべてのデータをSQLデータベースに保存し、次のコマンドで画像にアクセスできます。

<img src="https://graph.facebook.com/<?php echo $user;?>/picture">

ユーザーが自分のFacebookプロファイルにアクセスせずに画像を変更できるように、画像(リンクだけでなく実際の画像)をサーバーフォルダーの1つに保存したいと思います。

それは可能ですか?

4

1 に答える 1

3

これにより、必要なことが行われ、画像が images/facebook/[USERID].jpg に配置されます。

おそらく、file_get_contents の代わりに cURL を使用する必要があることに注意してください。これにより、タイムアウトと長い応答時間に備えることができます (facebook API.

<?php
    $imageData = file_get_contents("https://graph.facebook.com/" . $user . "/picture");
    file_put_contents("images/facebook/" . $user . ".jpg", $imageData);
?>

これは、cURL で行う方法です (テストされていませんが、動作するはずです)。

<?php
    $facebookCurl = curl_init();

    curl_setopt($facebookCurl, CURLOPT_URL, "https://graph.facebook.com/" . $user . "/picture");
    curl_setopt($facebookCurl, CURLOPT_HEADER, 0);
    curl_setopt($facebookCurl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($facebookCurl, CURLOPT_TIMEOUT, 5);
    $imageData = curl_exec($facebookCurl);
    curl_close($facebookCurl);

    file_put_contents("images/facebook/" . $user . ".jpg", $imageData);
?>
于 2012-06-07T14:21:45.167 に答える