FBConnect PHP Mysql将注册用户连接到活动会话
这里的问题是。。。只有注册用户才能连接,如果有新用户,则无法将插入数据获取到数据库。请帮忙。谢谢FBConnect PHP Mysql将注册用户连接到活动会话,php,mysql,fbconnect,Php,Mysql,Fbconnect,这里的问题是。。。只有注册用户才能连接,如果有新用户,则无法将插入数据获取到数据库。请帮忙。谢谢 $app_id = ""; $app_secret = "" $facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => true )); mysql_connect('localhost', '#', '#'); mysql_select_
$app_id = "";
$app_secret = ""
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
mysql_connect('localhost', '#', '#');
mysql_select_db('#');
# Let's see if we have an active session
$session = $facebook->getSession();
if(!empty($session)) {
# Active session, let's try getting the user id (getUser()) and user info (api-> ('/me'))
try{
$uid = $facebook->getUser();
$user = $facebook->api('/me');
} catch (Exception $e){}
# We have an active session, let's check if we have already registered the user
$query = mysql_query("SELECT * FROM usertable WHERE fbid = ". $user['id']);
$result = mysql_fetch_array($query);
if($result['fbid'] = $_SESSION['id']) {
// this sets variables in the session
//$_SESSION['id'] = $result['fbid'];
// $_SESSION['fullname'] = $result['fullname'];
//$_SESSION['email'] = $result['email'];
$login_url = $facebook->getLoginUrl();
header("Location: ".$login_url);
}
}else if(!empty($user)){
# If not, let's add it to the database
//}
# We have an active session, let's check if we have already registered the user
$query = mysql_query("SELECT * FROM usertable WHERE fbid = ". $user['id']);
$result2 = mysql_fetch_array($query);
if(empty($result)){
$query = mysql_query("INSERT INTO usertable (fbid, username, email) VALUES ({$user['id']}, '{$user['username']}'");
$query = mysql_query("SELECT * FROM users WHERE id = " . mysql_insert_id());
$result2 = mysql_fetch_array($query);
// this sets variables in the session
$_SESSION['id'] = $result2['id'];
$_SESSION['fullname'] = $result2['fullname'];
$_SESSION['email'] = $result2['email'];
//$_SESSION['username'] = $result['username'];
} else {
# For testing purposes, if there was an error, let's kill the script
die("There was an error.");
}
} else {
# There's no active session, let's generate one
$login_url = $facebook->getLoginUrl();
header("Location: ".$login_url);
}
第二行末尾没有分号(
$app\u secret=”“
)对不起,我错过了。。。它有一个分号,可能在试图删除原始应用程序机密但仍然无法获取用户的机密时被省略。对不起,我认为没有人会帮你解决这个问题。它太本地化了,我不认为人们会试图理解这段(相当长的)代码来回答它。此外,代码非常松散(例如,您正在检查$result
变量在未声明$result
的位置是否为空)。试着对这段代码稍加修改,我相信你会自己找到答案的。如果不是,试着概括问题,写一段小而复杂的代码来表达它。。。谢谢正在工作。没问题,祝贺你。:)