2010-12-03 5 views
3
<?php 
$user_name = "root"; 
$password = "root"; 
$database = "tvfanatic"; 
$server = "localhost"; 
$db_handle = mysql_connect($server, $user_name, $password) or die(mysql_error()); 
$db_found = mysql_select_db($database, $db_handle); 

require 'facebook.php'; 

$facebook = new Facebook(array(
    'appId' => 'MYAPPID', 
    'secret' => 'MYAPPSECRET', 
    'cookie' => true, 
)); 
$session = $facebook->getSession(); 

$me = null; 
// Session based API call. 
if ($session) { 
    try { 
     $uid = $facebook->getUser(); 
     $me = $facebook->api('/me'); 
    } 
    catch (FacebookApiException $e) {} 

    if ($db_found) { 
     echo $me['id']; 
     $user_id = $me['id']; 
     $username = $me['name']; 
     $EXIST = mysql_query("SELECT * FROM users WHERE fb_id='$user_id'"); 

     if (mysql_num_rows($EXIST) == 0){ 
      $SQL = "INSERT INTO users (fb_id, name) VALUES ('$user_id','$username')"; 
      $result = mysql_query($SQL); 
     } 
    } 
    else{ 
     mysql_close($db_handle); 
    } 
} ?> 

Mon application ne se connecte pas à l'API Facebook, mais je ne vois pas ce qui ne va pas. Il semble être quelque chose avec la ligne, $facebook->api('/me').Connexion à l'API Facebook avec PHP

+0

Avez-vous obtenu des erreurs? Est-ce que ça va au bloc catch? Qu'est-ce qui ne va pas? – Trufa

Répondre

2

Je ne peux pas voir beaucoup de mal avec le code. Cependant, il y a quelques choses différentes à la mienne.

$facebook = new Facebook(array(
    'appId' => '****************', 
    'secret' => '*************************', 
    'cookie' => true, 
)); 

$session = $facebook->getSession(); 

$me = null; 
// Session based API call. 
if ($session) { 
    try { 
     $uid = $facebook->getUser(); 
     $me = $facebook->api('/me'); 
    } 
    catch (FacebookApiException $e) { 
     error_log($e); //you haven't got that 
    } 
} 

Et utilisez-vous le $me? Assurez-vous d'avoir déclaré les codes $logoutUrl et $loginUrl.

Des erreurs sont-elles affichées?

Espérons que cela a aidé!

+0

qui n'a pas fait de différence en dehors de la rupture du code - me donnant une sortie vide. il n'y a pas d'erreurs apparaissant c'est ce que je ne comprends pas - c'est définitivement se connecter à la base de données tout simplement pas le peupler. – user529345