Wie bekommen Nutzer E-Mails von facebook-Authentifizierung z.B. via php oder javascript

Habe ich eine Foto-Galerie auf meiner website und ich möchten, dass facebook Authentifizierung, um es anzuzeigen und sammeln von Namen/E-Mail-Adressen. Also ich habe bis jetzt ging es [hier][1] und zu Lesen, die ich habe versucht, die php-Beispiel für die gearbeitet, aber ich bin verwirrt über, wie man das Benutzer-name/E-Mail-Authentifizierung? Ich habe diese aber in dem Beispiel, warum würde "code" leer sein, und wie bekomme ich die Benutzer die Informationen wie im Beispiel immer den "Staat". Auch in meiner version wird es nur ausgelöst wird, deaktiviert die Umleitung, kommen, wie in dem Beispiel die 2. Bedingung ist nie erfüllt?

Beispiel:

 <?php 

   $app_id = "YOUR_APP_ID";
   $app_secret = "YOUR_APP_SECRET";
   $my_url = "YOUR_URL";

   session_start();
   $code = $_REQUEST["code"];

   if(empty($code)) {
     $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
     $dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" 
       . $app_id . "&redirect_uri=" . urlencode($my_url) . "&state="
       . $_SESSION['state'];

     echo("<script> top.location.href='" . $dialog_url . "'</script>");
   }

   if($_REQUEST['state'] == $_SESSION['state']) {
     $token_url = "https://graph.facebook.com/oauth/access_token?"
       . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url)
       . "&client_secret=" . $app_secret . "&code=" . $code;

     $response = @file_get_contents($token_url);
     $params = null;
     parse_str($response, $params);

     $graph_url = "https://graph.facebook.com/me?access_token=" 
       . $params['access_token'];

     $user = json_decode(file_get_contents($graph_url));
     echo("Hello " . $user->name);
   }
   else {
     echo("The state does not match. You may be a victim of CSRF.");
   }

 ?>
Schreibe einen Kommentar