2012-02-24 4 views
1

Je veux faire une page Web, qui fonctionne comme une application (dans facebook, iframe) et comme une page Web habituelle aussi. Comment puis-je accomplir cela correctement? En ce moment, je me connecte à Facebook en tant qu'application avec le SDK PHP: getLoginUrl(), puis redirige l'utilisateur vers cette URL, blabla. Fonctionne bien si je suis sur Facebook, et l'utiliser comme une application. Problème est si la session est obsolète, et je ne regarde pas ceci sur facebook, cette redirection devient ennuyante, aussi: très peu professionnel à mon avis ...Facebook: page Web fonctionnant comme une application et une page

Merci d'avance!

SOLVED: voici la solution pour mon problème spécifique:

Il m'a fallu 1 changement de ligne dans le code, ce qui est le suivant:
$canvaseurl = ($_SERVER['HTTP_REFERER'] == "https://apps.facebook.com/APPNAME/") ? "https://apps.facebook.com/APPNAME/": "https://MYWEBPAGE.hu/app/";

Je redirect simplement l'url , d'où vient l'utilisateur. Assez simple. :)

+0

Avez-vous essayé avec le JavaScript SDK? Vous pouvez vérifier si l'utilisateur est connecté à FB.getLoginStatus (http://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/) et sinon, vous pouvez le connecter avec FB.login (http : //developers.facebook.com/docs/reference/javascript/FB.login/). Tout cela peut se produire sans actualisation/redirection de page. –

+0

Non, je n'y ai pas pensé. Mais la connexion JS appellera une pop-up, n'est-ce pas? Et ce n'est juste pas bon. :/ Quoi qu'il en soit, merci pour le conseil! – ZeeCoder

Répondre

0

Une fois que la personne aura autorisé l'application, vous pourrez utiliser l'iframe ou le site Web, juste tant que vous ne le forcez pas à retourner à la page de l'application. J'ai utilisé le Facebook PHP SDK et j'ai remarqué que si vous entrez l'emplacement réel qui est chargé dans l'iframe, il restera sur cette page en dehors du apps.facebook.com. Cependant, cela dépend des paramètres que vous utilisez. Essayez d'expérimenter avec et voir si cela vous aide.

+0

Merci, je vais essayer certaines choses, puis rapporter! :) – ZeeCoder

+0

C'est exactement ce que j'ai remarqué quand je jouais avec, mais vous pouvez changer les variables du système en fonction de l'endroit où la page est chargée. J'utilise personnellement une version pour l'application iframe, que j'ai sous-domaine, et le domaine actuel en tant que site. Cela me permet de garder les thèmes séparés les uns des autres tout en utilisant git pour gérer les fichiers de base, seule différence est que je change le modèle par défaut en fonction de l'emplacement. – OpensaurusRex

+0

Merci pour les réponses, j'ai réussi à le faire, a également édité la question afin que ma solution puisse être trouvée plus rapidement. Merci encore. ^^ – ZeeCoder

Questions connexes