Hallo,
Ik heb voor mijn website een facebook login geïntegreerd. Alleen zit met een probleem met de sessions.
Met de normale login doet de login het. En geeft een sessie mee: $_SESSION['id'] .
Nu met de facebook login stuurt de index van de ingame gelijk weer terug naar de outgame.
Dat komt door de check in de ingame:
Maar hoe zorg ik dat de facebook sessie hier ook wordt gecontroleerd?
Facebook login script:
PHP
<?/* For this to work you will have to download the Facebook PHP SDK https://github.com/facebook/php-sdk/*/require('facebook.php');/* Set these variables to application's ones*/$app_id = '410691255645169';$app_secret = 'b6cd658419182d749504357e8562b0fe';// init fb object$facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => false));// get a session for user$session = $facebook->getSession();$me = null;// if have session get user dataif ($session){ try { $uid = $facebook->getUser(); $me = $facebook->api('/me'); } catch(FacebookApiException $e) { error_log($e); }}// if we have user data show logout button, else show login button with extended permission to get his email addy$data = '';if ($me){ // store user data here!!! print_r($me); $logoutUrl = $facebook->getLogoutUrl(); $data = '<a href="'.$logoutUrl.'"><img src="http://static.ak.fbcdn.net/rsrc.php/z2Y31/hash/cxrz4k7j.gif"></a>';}else{ $loginUrl = $facebook->getLoginUrl(array('req_perms' => 'email,read_stream')); $data = '<a href="'.$loginUrl.'"><img src="http://static.ak.fbcdn.net/rsrc.php/zB6N8/hash/4li2k73z.gif"></a>';}// for javascript side use the same session$fb_session = json_encode($session);?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Verwijzing naar site..</title></head><body> <script language="JavaScript"><!-- window.location="http://www.secondwar.nl/game/index.php";//--></script> <div id="fb-root"></div> <script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script> <script type="text/javascript"> //<![CDATA[ FB.init({ appId: '<?=$app_id;?>', cookie: true, status: true, xfbml: true, session: <?=$fb_session;?> }); FB.Event.subscribe('auth.login', function(){ window.location.reload(); }); //]]> </script></body></html>
Kunnen jullie mij op weg helpen?
Met vriendelijke groeten,
Jeffrey Rijdes