{"id":23282,"date":"2021-04-27T15:58:00","date_gmt":"2021-04-27T12:58:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=23282"},"modified":"2021-10-18T02:25:24","modified_gmt":"2021-10-17T23:25:24","slug":"connexion-sociale-en-php-a-l-aide-de-la-bibliotheque-hybridauth","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/connexion-sociale-en-php-a-l-aide-de-la-bibliotheque-hybridauth\/","title":{"rendered":"Connexion sociale en PHP \u00e0 l&rsquo;aide de la biblioth\u00e8que HybridAuth"},"content":{"rendered":"<p>L&rsquo;int\u00e9gration de la fonction de connexion sociale dans le site Web est une tendance de nos jours. Cette fonctionnalit\u00e9 facilite la connexion et l&rsquo;enregistrement de l&rsquo;utilisateur. Si un utilisateur est pr\u00eat \u00e0 utiliser son profil social sur votre site Web, il n&rsquo;a pas besoin de remplir votre formulaire d&rsquo;inscription, activez son compte.<\/p>\n<p>Les sites sociaux ne fournissent pas non plus d&rsquo;informations priv\u00e9es d&rsquo;un utilisateur sur le site Web. Au lieu de cela, ils ne fournissent que des d\u00e9tails de base tels que le nom, le sexe, l&rsquo;identifiant social (sur un site social sp\u00e9cifique), l&rsquo;e-mail. L&rsquo;application Web peut demander plus de d\u00e9tails sur un utilisateur. Mais, l&rsquo;utilisateur doit donner acc\u00e8s \u00e0 des informations suppl\u00e9mentaires. Cela d\u00e9pend totalement de l&rsquo;utilisateur qui donne acc\u00e8s \u00e0 plus d&rsquo;informations ou non. Certains sites sociaux comme Twitter ne fournissent pas d&rsquo;e-mail d&rsquo;un utilisateur. Le fait est qu&rsquo;il est s\u00fbr d&rsquo;utiliser votre profil de site social pour interagir avec un site Web.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20879-608236eade4f2.png\" data-rel=\"lightbox\" ><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20879-608236eade4f2.png\" alt=\"Connexion sociale en PHP \u00e0 l&#039;aide de la biblioth\u00e8que HybridAuth\" ><\/a><\/p>\n<p>Pour un d\u00e9veloppeur, ce n&rsquo;est pas simple d&rsquo;\u00e9crire un code pour la connexion sociale. Tout d&rsquo;abord, ils doivent lire la documentation fournie par les sites sociaux comme Facebook, Twitter. Chaque site social a sa propre biblioth\u00e8que et sa propre fa\u00e7on d&rsquo;int\u00e9grer la fonction de connexion sociale.<\/p>\n<p>Par exemple, vous cherchez \u00e0 ajouter une connexion sociale avec Facebook et Twitter. Dans ce cas, un d\u00e9veloppeur doit \u00e9crire un code diff\u00e9rent pour les deux sites sociaux, tel qu&rsquo;il est fourni par eux dans leur documentation officielle.<\/p>\n<p>Il n&rsquo;est pas facile pour un d\u00e9veloppeur de d\u00e9velopper un code si vous avez plus d&rsquo;un site social avec lequel interagir.<\/p>\n<p>Merci \u00e0 <a href=\"https:\/\/hybridauth.github.io\/hybridauth\/index.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">HybridAuth<\/a> &#8211; signe social open source sur la biblioth\u00e8que PHP. L&rsquo;\u00e9quipe HybridAuth facilite la vie de nos d\u00e9veloppeurs.<\/p>\n<p>En utilisant cette biblioth\u00e8que, nous n&rsquo;avons pas besoin de lire la documentation des sites sociaux sur la fa\u00e7on d&rsquo;int\u00e9grer la connexion sociale dans le site Web. Ce que nous devons tous faire, c&rsquo;est installer et configurer correctement la biblioth\u00e8que HybridAuth et enregistrer une application sur les sites sociaux (ce qui est n\u00e9cessaire m\u00eame si nous n&rsquo;utilisons pas la biblioth\u00e8que HybridAuth).<\/p>\n<h3>Installation<\/h3>\n<p>Pour installer la biblioth\u00e8que HybridAuth, l&rsquo;utilisation de composer est recommand\u00e9e. Si composer n&rsquo;est pas install\u00e9 sur votre syst\u00e8me, vous pouvez l&rsquo;obtenir sur leur <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">site officiel<\/a>.<\/p>\n<p>Cr\u00e9ez un fichier composer.json dans le r\u00e9pertoire racine de votre projet et placez-y le code ci-dessous.<\/p>\n<pre><code>{\n\u00a0\u00a0\u00a0\u00a0\"require\": {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"hybridauth\/hybridauth\": \"2.9.6\"\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Nous avons adopt\u00e9 &quot;2.9.6&quot; car au moment de la r\u00e9daction de cet article, il s&rsquo;agit de la <a href=\"https:\/\/github.com\/hybridauth\/hybridauth\/releases\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">derni\u00e8re version stable<\/a> de la biblioth\u00e8que HybridAuth.<\/p>\n<p>Ouvrez le terminal dans le r\u00e9pertoire racine du projet et ex\u00e9cutez la commande <code>composer install<\/code>. Il installera la biblioth\u00e8que HybridAuth version 2.9.6 sur votre syst\u00e8me.<\/p>\n<h3>Configuration<\/h3>\n<p>Assurez-vous de configurer correctement une biblioth\u00e8que. Si vous ne parvenez pas \u00e0 le configurer correctement, vous ne b\u00e9n\u00e9ficierez pas d&rsquo;une biblioth\u00e8que et finirez dans la frustration.<\/p>\n<p>Copiez les 2 fichiers config.php et index.php du r\u00e9pertoire vendorhybridauthhybridauthhybridauth et placez-les dans votre r\u00e9pertoire racine d&rsquo;un projet. Renommez le fichier index.php en hybridauth.php car nous pourrions avoir un autre index.php au m\u00eame endroit.<\/p>\n<p>Ouvrez le fichier config.php et ajoutez vos cl\u00e9s d&rsquo;application et votre secret dans le tableau des fournisseurs associ\u00e9s.<\/p>\n<p><a href=\"https:\/\/hybridauth.github.io\/hybridauth\/userguide.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Cliquez ici<\/a> pour obtenir la liste de tous les fournisseurs sociaux pris en charge par HybridAuth. Nous trouvons \u00e9galement des fournisseurs et des fournisseurs suppl\u00e9mentaires dans la biblioth\u00e8que install\u00e9e elle-m\u00eame. Pour voir les fournisseurs, acc\u00e9dez \u00e0 vendorhybridauthhybridauthhybridauthHybridProviders et pour des fournisseurs suppl\u00e9mentaires, consultez le r\u00e9pertoire vendorhybridauthhybridauthadditional-providers.<\/p>\n<p>Disons que nous devons sp\u00e9cifier les d\u00e9tails de l&rsquo;application d&rsquo;un Facebook. Pour cela, dans le config.php pour le fournisseur Facebook notre code est le suivant.<\/p>\n<pre><code>return array(\n\u00a0\u00a0\u00a0\u00a0\"base_url\" =&gt; \"YOUR_SITE_URL\/hybridauth.php\",\n\u00a0\u00a0\u00a0\u00a0\"providers\" =&gt; array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/other providers code\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"Facebook\" =&gt; array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"enabled\" =&gt; true,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"keys\" =&gt; array(\"id\" =&gt; \"YOUR_APP_ID\", \"secret\" =&gt; \"YOUR_APP_SECRET\"),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"trustForwarded\" =&gt; false,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/other providers code\n\u00a0\u00a0\u00a0\u00a0),\n);<\/code><\/pre>\n<p>Assurez-vous d&rsquo;avoir remplac\u00e9 les espaces r\u00e9serv\u00e9s YOUR_APP_ID et YOUR_APP_SECRET par les valeurs r\u00e9elles.<\/p>\n<p>Nous avons \u00e9galement transmis le chemin d&rsquo;un fichier hybridauth.php pour base_url.<\/p>\n<p>Ensuite, ouvrez le fichier hybridauth.php et apportez les modifications suivantes.<\/p>\n<p>Remplacer<\/p>\n<pre><code>require_once( \"Hybrid\/Auth.php\" );\nrequire_once( \"Hybrid\/Endpoint.php\" );\n\u00a0\nHybrid_Endpoint::process();<\/code><\/pre>\n<p>Avec<\/p>\n<pre><code>require 'vendor\/autoload.php';\n\u00a0\nHybrid_Endpoint::process();<\/code><\/pre>\n<h3>Code de connexion social r\u00e9el \u00e0 l&rsquo;aide de la biblioth\u00e8que HybridAuth<\/h3>\n<p>A ce stade, nous avons termin\u00e9 l&rsquo;installation et la configuration d&rsquo;une biblioth\u00e8que. Ensuite, nous devons \u00e9crire un code de connexion social r\u00e9el.<\/p>\n<p>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\u00f9 vous devez \u00e9crire un code.<\/p>\n<p><strong>connexion.php<\/strong><\/p>\n<pre><code>require 'vendor\/autoload.php';\n\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0$hybridauth = new Hybrid_Auth( 'config.php' );\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$adapter = $hybridauth-&gt;authenticate( \"Facebook\" ); \/\/it can be Twitter, Google etc.\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$user_profile = $adapter-&gt;getUserProfile();\n} catch(Exception $e){\n\u00a0\u00a0\u00a0\u00a0echo 'Oops, we ran into an issue! '. $e-&gt;getMessage();\n}<\/code><\/pre>\n<p>Le param\u00e8tre pass\u00e9 \u00e0 la m\u00e9thode authentication() doit correspondre \u00e0 la cl\u00e9 du fournisseur dans le fichier config.php. La fonction authentication() v\u00e9rifie si un utilisateur est authentifi\u00e9. Si l&rsquo;utilisateur n&rsquo;est pas authentifi\u00e9, il est redirig\u00e9 vers la page de connexion d&rsquo;un site social associ\u00e9. Apr\u00e8s une authentification r\u00e9ussie, l&rsquo;utilisateur redirige \u00e0 nouveau vers notre fichier sign-in.php.<\/p>\n<p>Sur la ligne suivante, nous r\u00e9cup\u00e9rons les d\u00e9tails d&rsquo;un utilisateur authentifi\u00e9 \u00e0 l&rsquo;aide de la fonction getUserProfile().<\/p>\n<p>Pour d\u00e9connecter l&rsquo;utilisateur attach\u00e9 au fournisseur, nous \u00e9crivons simplement le code ci-dessous dans notre fichier logout.php.<\/p>\n<p><strong>d\u00e9connexion.php<\/strong><\/p>\n<pre><code>require 'vendor\/autoload.php';\n\u00a0\nHybrid_Auth::logoutAllProviders();<\/code><\/pre>\n<p>Nous esp\u00e9rons que vous comprendrez comment ajouter un script de connexion sociale en PHP \u00e0 l&rsquo;aide de la biblioth\u00e8que HybridAuth. Si vous avez des questions ou des suggestions, veuillez laisser un commentaire ci-dessous. Vous pouvez \u00e9galement lire notre article <a href=\"https:\/\/themewp.inform.click\/fr\/systeme-de-connexion-sociale-utilisant-laravel-socialite\/\" title=\"Syst\u00e8me de connexion sociale utilisant Laravel Socialite\">Syst\u00e8me de connexion sociale utilisant Laravel Socialite<\/a>.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vous cherchez \u00e0 int\u00e9grer la connexion sociale dans le site Web PHP ? Dans cet article, nous vous montrons comment ajouter une fonctionnalit\u00e9 de connexion sociale \u00e0 l&rsquo;aide de la biblioth\u00e8que HybridAuth.<\/p>\n","protected":false},"author":1,"featured_media":21761,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[176,273],"tags":[844],"class_list":["post-23282","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chrome-4","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/23282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=23282"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/23282\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21761"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=23282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=23282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=23282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}