0
全部, 我正在使用wordpress并试图让我的用户用facebook登录。在我的header.php WordPress的,我有以下代码:Facebook PHP SDK不允许登录用户
define('123', '123');
//uses the PHP SDK. Download from https://github.com/facebook/php-sdk
require 'facebook.php';
$facebook = new Facebook(array(
'appId' => '123',
'secret' => '12345',
'cookie' => true,
));
$uid = $facebook->getUser();
if ($uid) {
try {
$userInfo = $facebook->api('/' + $uid);
$qry = "Select user_id, role from event_details where email_address='$userInfo[email]'";
echo $qry;
$result = mysql_query($qry);
$resultrows = mysql_num_rows($result);
if($resultrows>0){
$resultset = mysql_fetch_array($result);
$_SESSION['user_id'] = $resultset['user_id'];
$_SESSION['role'] = $resultset['role'];
$target = "http://www.website.com/event_choices";
header("Location:". $target);
}
} catch (FacebookApiException $e) {
error_log($e);
}
}else{
echo "not logged into facebook";
}
if ($uid) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl(array(
'next'=>'http://www.website.com/event_choices'
));
}
然后当我在WordPress的实际创建一个页面,我有以下代码:
<?php if ($uid): ?>
<?php echo "Welcome, ".$uid['first_name']. ".<br />"; ?>
<a href="<?php echo $logoutUrl; ?>">
<img src="http://static.ak.fbcdn.net/rsrc.php/z2Y31/hash/cxrz4k7j.gif">
</a>
<?php else: ?>
<a href="<?php echo $loginUrl; ?>">
<img src="http://static.ak.fbcdn.net/rsrc.php/zB6N8/hash/4li2k73z.gif">
</a>
<?php endif ?>
这显示登录按钮,但每当我点击按钮什么都没有发生。当我查看源代码时,$ loginUrl没有被填充。我究竟做错了什么?
谢谢!