2012-03-19 108 views
0

这段代码有什么问题?我需要让用户能够使用php账户登录到这个页面,然后需要能够看到他们的相册,但登录不起作用。这段代码中的错误在哪里?请帮帮我!谢谢Php登录不起作用

我试过其他登录脚本,但没有人工作。

<?php 

require 'src/facebook.php'; 

$facebook = new Facebook(array(
'appId' => 'xxx', 
'secret' => 'xxx', 
)); 

$user = $facebook->getUser(); 

if ($user) { 
try { 
// Proceed knowing you have a logged in user who's authenticated. 
$user_profile = $facebook->api('/me'); 
} catch (FacebookApiException $e) { 
error_log($e); 
$user = null; 
} 
} 

if ($user) { 
$logoutUrl = $facebook->getLogoutUrl(array('next'=>'http://www.photoworld.it?logoutfb')); 
} else { 
$loginUrl = $facebook->getLoginUrl(array('redirect_uri'=>'http://www.photoworld.it/facebooksdk/load-albums.php')); 
} 




?> 

<?php if ($me): ?> 
<?php echo "Welcome, ".$me['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 ?> 
<?php 

$user_id = $facebook->getUser(); 


if($user_id) { 


echo $me['name'] . "<br/>"; 
echo $me['username']. "<br/><br/>"; 


$fql = "SELECT aid, name, photo_count, cover_object_id FROM album WHERE owner = '{$user_id}'"; 

$ret_obj = $facebook->api(array(
'method' => 'fql.query', 
'query' => $fql, 
)); 

$total_albums = sizeof($ret_obj); 


echo $total_albums . " album totali.<br/><br/>"; 

for($i=0;$i<$total_albums;$i++) 
{ 
echo "<a href='?aid=" . $ret_obj[$i]['aid'] . "'>" . $ret_obj[$i]['name'] . " (" . $ret_obj[$i]['photo_count'] . ")</a><br/>"; 
} 
} 

if (isset($_GET['aid'])) { 

echo("<br/><br/>Immagini dell'album selezionato<br/><br/>"); 

$fql2 = "SELECT pid,src_small,src_big,src FROM photo WHERE aid=" . $_GET['aid'] . ""; 

$ret_obj2 = $facebook->api(array(
'method' => 'fql.query', 
'query' => $fql2, 
)); 
$total_photos = sizeof($ret_obj2); 


for($i=0;$i<$total_photos;$i++) 
{ 
echo "<a href='" . $ret_obj2[$i]['src_big'] . "'><img src='" . $ret_obj2[$i]['src'] . "'></a><br/><br/>"; 
} 

} 
?> 
+1

它以什么方式工作,你可能需要更具体的错误信息。 – BenOfTheNorth 2012-03-19 19:03:16

+0

不,没有错误消息,但是当我点击登录按钮时,它会返回到同一页面,而无需登录...我总是看到登录按钮,而且从不记录用户的信息(如用户名或列表我的代码的第二部分的专辑) – 2012-03-19 19:51:21

回答

0

$me从未真正定义过,因此您将始终根据您的条件获取登录URL。你或者打算使用$user$user_profile