Class 'Facebook' not found

Class 'Facebook' not found
MI
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 8 lat
  • Postów:14
0

Witam,
próbuję działać trochę z facebook API, ale już na początku mam dziwny błąd. Mój kod wygląda tak:

Kopiuj
 
<?php

  include('facebook-sdk-v5/src/Facebook/Facebook.php');
$page_id = 'xxxxxxxxx';
$message = "xxxxxxxx";
$appID = 'xxxxxxxxx';
$secret = 'xxxxxxxxx';
 
 
 
$facebook = new Facebook(array(          //<<<<<<błąd
  'appId'  => $appID,
  'secret' => $secret,
));
 

dostaję błąd:
Fatal error: Class 'Facebook' not found in /usr/home/******/post.php on line 11
mimo, że Facebook.php jest na swoim miejscu a w nim clasa Facebook jest deklarowana.
Ktoś ma jakiś pomysł co to może być?

DE
Od kiedy include ma nawiasy?
dzek69
Moderator
  • Rejestracja:ponad 18 lat
  • Ostatnio:około miesiąc
  • Lokalizacja:Rzeszów
0

include zapewne nie działa, na 99% ukrywasz wszelkie błędy, więc nawet nie widzisz, że się nie wykonuje.

sprawdź ścieżkę, włączając w to duże/małe litery, zamień include na require (zapewne dostaniesz po prostu białą stronę wtedy), zacznij logować błędy php i sprawdzaj dziennik, gdy coś jest nie tak.


MI
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 8 lat
  • Postów:14
0

Próbowałem z include, require i reguire_once - ten sam błąd. Wcześniej miałem problem ze ścieżką i wyświetlał się błąd ścieżki więc chyba nie w tym rzecz? Myślałem, że problem jest z prawami dostępu ale nadałem 777 i dalej to samo.

dzek69
Moderator
  • Rejestracja:ponad 18 lat
  • Ostatnio:około miesiąc
  • Lokalizacja:Rzeszów
0

to może ten plik po prostu nie definiuje klasy Facebook? Zajrzyj do niego


DE
  • Rejestracja:ponad 9 lat
  • Ostatnio:11 miesięcy
  • Postów:1788
0

include to nie funkcja tylko konstrukcja językowa dlatego nie dajesz nawiasów tylko include 'path/to/file';

Wejdź w konsoli do katalogu root aplikacji i wpisz tree -d (sudo apt-get install tree) i wrzuć output tutaj

Fatal error: Class 'Facebook' not found in /usr/home/******/post.php on line 11

podaj pełną ścieżkę zamiast gwiazdek

edytowany 2x, ostatnio: Desu
dzek69
strzelam, że to shared hosting
old_man
  • Rejestracja:ponad 18 lat
  • Ostatnio:4 miesiące
0

Zamiast

Kopiuj
include('facebook-sdk-v5/src/Facebook/Facebook.php');

użyj

Kopiuj
require_once 'facebook-sdk-v5/src/Facebook/autoload.php'; 
edytowany 1x, ostatnio: old_man
hywak
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Kraków/Kielce
  • Postów:17
1

Zrób tak jak napisał @old_man i dodatkowo spróbuj stworzyć obiekt Facebook/Facebook. Klasa "Facebook" jest w przestrzeni "Facebook".

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.