Jump to content

Archived

This topic is now archived and is closed to further replies.

Grandioso

Facebook SDK questions - authentication and app flow

Recommended Posts

I'm building my first ever page tab app for a facebook fan page. It's mostly static HTML with a gallery of user submitted images. The users will be able to vote for the images and the picture with the most votes wins. SImple enough, but I'm struggling here.

 

I'm currently facing 2 problems - the first one is related to authentication inside the app and the other to app flow.

 

1. authentication

 

In order to know who uploaded the picture, I need to get some unique user info + name. I found out that this is impossible without user authentication, so I'm trying to get the user to authenticate and let me use their ID/name.

 

I created a login link using the getLoginUrl method of the php SDK. This login link works fine when used outside the context of facebook, but doesn't do anything when clicked inside the page tab.

 

How else do I get the desired user data ?

 

2. app flow

 

I'm trying to split the app into 3 main modules for now - main page, pre-like and upload form. Which one is displayed would be determined by a post variable.

My index page looks like this:

 

 

<?php 
include( 'head.php' ); 

if ( $is_liked )
{
switch( $_GET['c'] ) 
{
case 'upload' :
include( 'pages/upload-form.php' );
break;
default : 
include( 'pages/main.php' );
break;
}
} else 
{ 
include( 'pages/pre-like.php' );
}

include( 'foot.php' ); 
?>

The head file initializes the FB Object and creates a variable to say if the user like the page or not.

 

 

$signed_requrest = $fb->getSignedRequest();
$is_liked = $signed_requrest['page']['liked'];

 

This works fine, but when I'm on some other page (with a URL parameter), then the FB object will not be created correctly, therefore I'm not able to get the 'liked' state of the current user. Does anyone have any idea what's wrong with this ?

 

I hope someone will be able to help me, as the documentation is not too clear about these things...

Share this post


Link to post
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.