Current File : /home/users/barii/public_html/finansenl.com.pl/system.fotomagnesy.pl/facebook/FBUserPhoto.php
<?php
// Include required libraries
use Facebook\Facebook;
use Facebook\Exceptions\FacebookResponseException;
use Facebook\Exceptions\FacebookSDKException;

require_once 'Facebook/autoload.php';
require_once 'Facebook/Exceptions/FacebookResponseException.php';
require_once 'Facebook/Exceptions/FacebookSDKException.php';
require_once 'Facebook/Helpers/FacebookRedirectLoginHelper.php';

class FBUserPhoto
{

    private $appId;

    private $appSecret;

    private $fb;

    private $accessToken;

    function __construct()
    {
        $this->appId = "API-KEY";
        $this->appSecret = "API-SECRET";
        $this->fb = new Facebook([
            'app_id' => $this->appId,
            'app_secret' => $this->appSecret,
            'default_graph_version' => 'v3.1'
        ]);

        $this->accessToken = "{access-token}";
    }

    function getPhotos()
    {
        $postData = "";
        try {
            $userPosts = $this->fb->get("/{user-id}/photos/uploaded?fields=picture,created_time,name", $this->accessToken);
            $postBody = $userPosts->getDecodedBody();
            $postData = $postBody["data"];
        } catch (FacebookResponseException $e) {
            // display error message
            exit();
        } catch (FacebookSDKException $e) {
            // display error message
            exit();
        }
        return $postData;
    }

    function uploadPhoto($caption, $photoPath)
    {
        $params = array(
            "caption" => $caption,
            "url" => "https://yourdomain.com/how-to-upload-facebook-user-photos-using-php-sdk/" . $photoPath
        );

        try {
            $postResponse = $this->fb->post("/{user-id}/photos", $params, $this->accessToken);
        } catch (FacebookResponseException $e) {
            // display error message
            print $e->getMessage();
            exit();
        } catch (FacebookSDKException $e) {
            print $e->getMessage();
            exit();
        }
    }
}