...
Actualités WEB et WordPress, thèmes, plugins. Ici, nous partageons des conseils et les meilleures solutions de sites Web.

Connexion sociale en PHP à l’aide de la bibliothèque HybridAuth

36

L’intégration de la fonction de connexion sociale dans le site Web est une tendance de nos jours. Cette fonctionnalité facilite la connexion et l’enregistrement de l’utilisateur. Si un utilisateur est prêt à utiliser son profil social sur votre site Web, il n’a pas besoin de remplir votre formulaire d’inscription, activez son compte.

Les sites sociaux ne fournissent pas non plus d’informations privées d’un utilisateur sur le site Web. Au lieu de cela, ils ne fournissent que des détails de base tels que le nom, le sexe, l’identifiant social (sur un site social spécifique), l’e-mail. L’application Web peut demander plus de détails sur un utilisateur. Mais, l’utilisateur doit donner accès à des informations supplémentaires. Cela dépend totalement de l’utilisateur qui donne accès à plus d’informations ou non. Certains sites sociaux comme Twitter ne fournissent pas d’e-mail d’un utilisateur. Le fait est qu’il est sûr d’utiliser votre profil de site social pour interagir avec un site Web.

Connexion sociale en PHP à l'aide de la bibliothèque HybridAuth

Pour un développeur, ce n’est pas simple d’écrire un code pour la connexion sociale. Tout d’abord, ils doivent lire la documentation fournie par les sites sociaux comme Facebook, Twitter. Chaque site social a sa propre bibliothèque et sa propre façon d’intégrer la fonction de connexion sociale.

Par exemple, vous cherchez à ajouter une connexion sociale avec Facebook et Twitter. Dans ce cas, un développeur doit écrire un code différent pour les deux sites sociaux, tel qu’il est fourni par eux dans leur documentation officielle.

Il n’est pas facile pour un développeur de développer un code si vous avez plus d’un site social avec lequel interagir.

Merci à HybridAuth – signe social open source sur la bibliothèque PHP. L’équipe HybridAuth facilite la vie de nos développeurs.

En utilisant cette bibliothèque, nous n’avons pas besoin de lire la documentation des sites sociaux sur la façon d’intégrer la connexion sociale dans le site Web. Ce que nous devons tous faire, c’est installer et configurer correctement la bibliothèque HybridAuth et enregistrer une application sur les sites sociaux (ce qui est nécessaire même si nous n’utilisons pas la bibliothèque HybridAuth).

Installation

Pour installer la bibliothèque HybridAuth, l’utilisation de composer est recommandée. Si composer n’est pas installé sur votre système, vous pouvez l’obtenir sur leur site officiel.

Créez un fichier composer.json dans le répertoire racine de votre projet et placez-y le code ci-dessous.

{
    "require": {
        "hybridauth/hybridauth": "2.9.6"
    }
}

Nous avons adopté "2.9.6" car au moment de la rédaction de cet article, il s’agit de la dernière version stable de la bibliothèque HybridAuth.

Ouvrez le terminal dans le répertoire racine du projet et exécutez la commande composer install. Il installera la bibliothèque HybridAuth version 2.9.6 sur votre système.

Configuration

Assurez-vous de configurer correctement une bibliothèque. Si vous ne parvenez pas à le configurer correctement, vous ne bénéficierez pas d’une bibliothèque et finirez dans la frustration.

Copiez les 2 fichiers config.php et index.php du répertoire vendorhybridauthhybridauthhybridauth et placez-les dans votre répertoire racine d’un projet. Renommez le fichier index.php en hybridauth.php car nous pourrions avoir un autre index.php au même endroit.

Ouvrez le fichier config.php et ajoutez vos clés d’application et votre secret dans le tableau des fournisseurs associés.

Cliquez ici pour obtenir la liste de tous les fournisseurs sociaux pris en charge par HybridAuth. Nous trouvons également des fournisseurs et des fournisseurs supplémentaires dans la bibliothèque installée elle-même. Pour voir les fournisseurs, accédez à vendorhybridauthhybridauthhybridauthHybridProviders et pour des fournisseurs supplémentaires, consultez le répertoire vendorhybridauthhybridauthadditional-providers.

Disons que nous devons spécifier les détails de l’application d’un Facebook. Pour cela, dans le config.php pour le fournisseur Facebook notre code est le suivant.

return array(
    "base_url" => "YOUR_SITE_URL/hybridauth.php",
    "providers" => array(
        //other providers code
        "Facebook" => array(
            "enabled" => true,
            "keys" => array("id" => "YOUR_APP_ID", "secret" => "YOUR_APP_SECRET"),
            "trustForwarded" => false,
        ),
        //other providers code
    ),
);

Assurez-vous d’avoir remplacé les espaces réservés YOUR_APP_ID et YOUR_APP_SECRET par les valeurs réelles.

Nous avons également transmis le chemin d’un fichier hybridauth.php pour base_url.

Ensuite, ouvrez le fichier hybridauth.php et apportez les modifications suivantes.

Remplacer

require_once( "Hybrid/Auth.php" );
require_once( "Hybrid/Endpoint.php" );
 
Hybrid_Endpoint::process();

Avec

require 'vendor/autoload.php';
 
Hybrid_Endpoint::process();

Code de connexion social réel à l’aide de la bibliothèque HybridAuth

A ce stade, nous avons terminé l’installation et la configuration d’une bibliothèque. Ensuite, nous devons écrire un code de connexion social réel.

Disons que nous devons utiliser la connexion sociale avec Facebook, puis notre code sera comme ci-dessous. Nous supposons que vous avez signin.php dans le dossier racine où vous devez écrire un code.

connexion.php

require 'vendor/autoload.php';
 
try {
    $hybridauth = new Hybrid_Auth( 'config.php' );
 
    $adapter = $hybridauth->authenticate( "Facebook" ); //it can be Twitter, Google etc.
 
    $user_profile = $adapter->getUserProfile();
} catch(Exception $e){
    echo 'Oops, we ran into an issue! '. $e->getMessage();
}

Le paramètre passé à la méthode authentication() doit correspondre à la clé du fournisseur dans le fichier config.php. La fonction authentication() vérifie si un utilisateur est authentifié. Si l’utilisateur n’est pas authentifié, il est redirigé vers la page de connexion d’un site social associé. Après une authentification réussie, l’utilisateur redirige à nouveau vers notre fichier sign-in.php.

Sur la ligne suivante, nous récupérons les détails d’un utilisateur authentifié à l’aide de la fonction getUserProfile().

Pour déconnecter l’utilisateur attaché au fournisseur, nous écrivons simplement le code ci-dessous dans notre fichier logout.php.

déconnexion.php

require 'vendor/autoload.php';
 
Hybrid_Auth::logoutAllProviders();

Nous espérons que vous comprendrez comment ajouter un script de connexion sociale en PHP à l’aide de la bibliothèque HybridAuth. Si vous avez des questions ou des suggestions, veuillez laisser un commentaire ci-dessous. Vous pouvez également lire notre article Système de connexion sociale utilisant Laravel Socialite.

Source d’enregistrement: artisansweb.net

Ce site utilise des cookies pour améliorer votre expérience. Nous supposerons que cela vous convient, mais vous pouvez vous désinscrire si vous le souhaitez. J'accepte Plus de détails