Sie befinden sich hier:
» 
» 
22.09.2013

Facebook-App mit PHP - Ursache für getUser()=0

Wenn Sie auf Facebook eine Applikation mit der PHP-SDK erstellen, kann es vorkommen, dass die Abfrage des Userobjektes $facebook->getUser(); den Wert 0 zurück gibt. Dies kann mehrere Ursachen haben. Die einfachste Ursache ist, dass Sie in Facebook nicht angemeldet sind. Dies sollte sich leicht beheben lassen. Meist ist das Problem aber anders gelagert.

$facebook->getUser()=0 bei fehlendem Access-Token

Wenn die Methode $facebook->getUser() als Wert 0 zurück gibt, obwohl Sie angemeldet sind, dann fehlen Ihnen vermutlich die entsprechenden Berechtigungen, um auf die Applikation zugreifen zu können. Wenn Sie fremde Applikationen erstmalig aufrufen, werden Sie üblicherweise gefragt: „Diese Applikation möchte auf ... zugreifen“. Erst nach Bestätigung können Sie mit der Applikation arbeiten. Im Hintergrund wird dabei ein valider Access-Token erzeugt.

Wenn Sie selbst die Applikation erstellen, werden Sie bei Ihrer eigenen Applikation natürlich nicht danach gefragt. Damit die Applikation aber trotzdem korrekt funktioniert, müssen Sie sich einen validen Access-Token generieren. Das können Sie mit dem Facebook-API-Explorer durchführen. Rufen Sie den API-Explorer auf und wählen rechts oben Ihre Applikation aus. Drücken Sie danach den Button „Zugriffsschlüssel erhalten“. Im darauffolgenden Fenster können Sie noch zusätzliche Rechte (Permissions), falls dies für Ihre Applikation notwendig ist, in Ihren Access-Token integrieren und dann „Get Access Token“ betätigen.

Erstellung eines Access-Tokens auf Facebook

Als Resultat wird Ihnen der passende Access-Token generiert und das Problem mit $facebook->getUser() = 0 sollte gelöst sein.

Autor: Mein Name ist Harry Kämpf und ich bin seit vielen Jahren als Projekt Manager im Webumfeld tätig. Auf diesen Erfahrungen basieren die Tipps zur Webseitengestaltung. Ich schreibe gern über Webthemen, nehme aktuelle Trends auf und gebe bei Bedarf kompetente Beratung. Mehr Infos können Sie auf ueber-mich.html nachlesen.

67