2010-12-09 42 views
0

J'utilise la classe monolithe PEAR Auth sur mon site pour l'authentification, mais récemment j'ai décidé que Facebook connect serait idéal aussi bien pour mon site. J'ai été sur le site de développement Facebook qui fournit des exemples pour intégrer Facebook avec les classes actuelles, mais je ne veux pas modifier le référentiel PEAR Auth que j'ai sur mon serveur.Intégrer Facebook connect avec la classe PEAR Auth?

Existe-t-il une autre solution? Devrais-je intégrer un autre système d'authentification?

Répondre

0

Vous pouvez facilement implémenter votre propre conteneur Facebook pour PEAR Auth. Vous n'avez pas besoin de modifier le code d'autorisation de PEAR pour cela, car il essaie de charger le conteneur d'authentification à partir de votre chemin d'inclusion.

Supposons que vous avez PEAR installé dans /usr/share/php/, et votre application dans /var/www/myapp/, vous pouvez créer un fichier /var/www/myapp/src/Auth/Container/Facebook.php. Dans votre application, utilisez

set_include_path(get_include_path() . PATH_SEPARATOR . '/var/www/myapp/src/') 

pour que PEAR Auth reconnaisse votre répertoire de conteneurs personnalisé. Ensuite, vous pouvez instancier un conteneur facebook dans Auth

+0

Super. Je vous remercie! – markbratanov

+0

btw, si vous n'avez pas déjà rejeté ce fil. Le chemin du conteneur peut-il être n'importe où? Ou doit-il être relatif ou dans le chemin où Auth est trouvé? "var/www/myapp/src/auth/containter" ou "var/www/myapp/php/auth/conteneur" <- où le repo Auth est nécessaire ou non? – markbratanov

+0

vous devez suivre la structure de classe PEAR Auth, donc votre classe doit être nommée Auth_Container_Something - le nom de la classe détermine aussi le nom du fichier, remplacez _ par/et ajoutez un .php – cweiske