PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Friday, February 11, 2022

[FIXED] Facebook PHP SDK 4.0 not working AT ALL - Inside Facebook Classes

 February 11, 2022     facebook, facebook-graph-api, facebook-php-sdk, php, sdk     No comments   

Issue

Good Night Folks.

Well, my problem is kind weird and long. I'm working on an app, and I create an development env to test the Facebook SDK PHP (4.0). My environment is Xubuntu, with PHP 5.9, Apache2.2. All full working on others libs. It's been days from my first error, and I'm getting late with the delivery of the project.

File Structure

pedro@pLp-Xubuntu:/var/www/html/sdk$ tree
.
├── composer.json
├── Facebook
│   ├── Entities
│   │   ├── AccessToken.php
│   │   └── SignedRequest.php
│   ├── FacebookAuthorizationException.php
│   ├── FacebookCanvasLoginHelper.php
│   ├── FacebookClientException.php
│   ├── FacebookJavaScriptLoginHelper.php
│   ├── FacebookOtherException.php
│   ├── FacebookPageTabHelper.php
│   ├── FacebookPermissionException.php
│   ├── FacebookRedirectLoginHelper.php
│   ├── FacebookRequestException.php
│   ├── FacebookRequest.php
│   ├── FacebookResponse.php
│   ├── FacebookSDKException.php
│   ├── FacebookServerException.php
│   ├── FacebookSession.php
│   ├── FacebookSignedRequestFromInputHelper.php
│   ├── FacebookThrottleException.php
│   ├── GraphAlbum.php
│   ├── GraphLocation.php
│   ├── GraphObject.php
│   ├── GraphPage.php
│   ├── GraphSessionInfo.php
│   ├── GraphUserPage.php
│   ├── GraphUser.php
│   └── HttpClients
│       ├── FacebookCurlHttpClient.php
│       ├── FacebookCurl.php
│       ├── FacebookGuzzleHttpClient.php
│       ├── FacebookHttpable.php
│       ├── FacebookStreamHttpClient.php
│       ├── FacebookStream.php
│       └── fb_ca_chain_bundle.crt
└── index.php

My Code

<?php
session_start();
// incluindo arquivos (coloquei todos pois segui um gist)
// onde mostrava as ultimas alterações nas estruturas de arquivos
// do SDK
require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookOtherException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphSessionInfo.php' );


require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );

require_once( 'Facebook/Entities/AccessToken.php' );
require_once( 'Facebook/Entities/SignedRequest.php' );


 // declarando namespaces
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookOtherException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphSessionInfo;


use Facebook\HttpClients\FacebookHttpable;
use Facebook\HttpClients\FacebookCurl;
use Facebook\HttpClients\FacebookCurlHttpClient;

use Facebook\Entities\AccessToken;
use Facebook\Entities\SignedRequest;
// Initialize&nbsp;application by Application ID and Secret
FacebookSession::setDefaultApplication('278431555695618 ','d182891f6e65d242f14c5ca199a0f48d');

// Login Healper with reditect URI
$helper = new FacebookRedirectLoginHelper( 'http://localhost/sdk' );

try {
  $session = $helper->getSessionFromRedirect();
}
catch( FacebookRequestException $ex ) {
  // Exception
}
catch( Exception $ex ) {
  // When validation fails or other local issues
}

// Checking Session
if(isset($session))
{
  // Request for user data
  $request = new FacebookRequest( $session, 'GET', '/me' );
  $response = $request->execute();
  // Responce
  $data = $response->getGraphObject();

  // Print data
  echo  print_r( $data, 1 );
}
else
{
  // Login URL if session not found
  echo '<a href="' . $helper->getLoginUrl() . '">Login</a>';
}
?>

The Error

[Thu Oct 23 22:10:07.989261 2014] [:error] [pid 2693] [client 127.0.0.1:54885] PHP Fatal error:  Class 'Facebook\\HttpClients\\FacebookStreamHttpClient' not found in /var/www/html/sdk/Facebook/FacebookRequest.php on line 166, referer: http://localhost/sdk/
[Thu Oct 23 22:13:40.809312 2014] [:error] [pid 1356] [client 127.0.0.1:54922] PHP Fatal error:  Class 'Facebook\\HttpClients\\FacebookStreamHttpClient' not found in /var/www/html/sdk/Facebook/FacebookRequest.php on line 166, referer: http://localhost/sdk/

Please, see that the File he's say that don't find, is there. Exactly where is his looking for...

I tried using autoload, and composer. Same error, only that it was on FacebookSession.php or the FacebookRequest.php.

The problem is, that I can't make work anywhere.

Anyway, thanks for any reply.

I hate Facebook now


Solution

Changing the order of the includes will fix the issue for you:

require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );

require_once( 'Facebook/Entities/AccessToken.php' );
require_once( 'Facebook/Entities/SignedRequest.php' );

require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookOtherException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphSessionInfo.php' );

Source



Answered By - Niraj Shah
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing