NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: FB přihlašování najednou nefunguje "Class not found"

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
hlavacekvojta:21.9.2015 19:49

Ahoj mám takový problém, na webu mám přihlašování přes facebooku a bez jakéhokoliv zásahu mi začal skákat error: Class 'Facebook\Face­bookSession' not found in /data/web/vir­tuals/85808/vir­tual/www/fblo­gin/fbconfig.php on line 20

Line 20:

FacebookSession::setDefaultApplication('.......', '....................');

Celý kod po chybu:

<?php
session_start();

// added in v4.0.0
mb_internal_encoding("UTF-8");
require_once 'dbconfig.php';
require_once 'autoload.php';
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\Entities\AccessToken;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookHttpable;

FacebookSession::setDefaultApplication('..................', '......................................');

ještě přidám autoload.php:

<?php

if (version_compare(PHP_VERSION, '5.4.0', '<')) {
  throw new Exception('The Facebook SDK v4 requires PHP version 5.4 or higher.');
}

/**
 * Register the autoloader for the Facebook SDK classes.
 * Based off the official PSR-4 autoloader example found here:
 * https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-4-autoloader-examples.md
 *
 * @param string $class The fully-qualified class name.
 * @return void
 */
spl_autoload_register(function ($class)
{
  // project-specific namespace prefix
  $prefix = 'Facebook\\';

  // base directory for the namespace prefix
  $base_dir = defined('FACEBOOK_SDK_V4_SRC_DIR') ? FACEBOOK_SDK_V4_SRC_DIR : __DIR__ . '/src/Facebook/';

echo $base_dir;
  // does the class use the namespace prefix?
  $len = strlen($prefix);
  if (strncmp($prefix, $class, $len) !== 0) {
    // no, move to the next registered autoloader
    return;
  }

  // get the relative class name
  $relative_class = substr($class, $len);

  // replace the namespace prefix with the base directory, replace namespace
  // separators with directory separators in the relative class name, append
  // with .php
  $file = $base_dir . str_replace('\\', '/', $relative_class) . '.php';
  echo $file;

  // if the file exists, require it
  if (file_exists($file)) {
    require $file;
  }
});

FacebookSession tam normálně je, nějaký tip proč to nefunguje? Jsem už v nouzi, ani s google jsem si moc neporadil, díky moc.

Editováno 21.9.2015 19:49
 
Odpovědět
21.9.2015 19:49
Avatar
katrincsak
Člen
Avatar
Odpovídá na hlavacekvojta
katrincsak:22.9.2015 16:33

A dělá ti to i na jiném prohlížeči? Já jen, že můj web mi taky začal dělat úplně divné problémy a pak jsem zjistil že prohlížeč si zaboha nepamatuje nic co si má uložit do jakékoliv mezi paměti.. Samozřejmě předpokládám, že tohle asi tvůj problém nebude, ale také jsem nejdříve koukal jak puk až na to že mi nefungovalo víc věcí a tak mi to došlo rychle.

 
Nahoru Odpovědět
22.9.2015 16:33
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.