[Réglé] Utiliser login MyBB sur page externe - Version imprimable +- MyBB.support, le portail francophone de MyBB (https://mybb.fr) +-- Forum : MyBB.fr (https://mybb.fr/forum-1.html) +--- Forum : Support (https://mybb.fr/forum-5.html) +--- Sujet : [Réglé] Utiliser login MyBB sur page externe (/thread-6680.html) |
Utiliser login MyBB sur page externe - djul - 27-10-2013 Bonsoir! Je souhaiterais utiliser le module de connexion de mon forum MyBB afin qu'il soit aussi utilisé sur un bout de page web que j'ai fais, pour ultérieurement limiter d'accès certaines pages aux membres du forum. Pensant simplifier le truc, j'ai mis ma page web dans le même dossier que le forum en utilisant le prefixe _res pour toutes les pages! index du forum: http://fifa-fuma.info/forum index de la page web: http://fifa-fuma.info/forum/res_index.php Au début de res_index j'ai donc ajouté: <?php include("res_login.php"); ?> Ensuite dans le res_login.php, j'y ai mis: <span style="float: left; margin-left: 10px; margin-top: -1px;"> <form action="member.php" method="post"> <input type="text" class="textbox" name="username" value="Username" size="20" onfocus="if(this.value == 'Username') { this.value = ''; }" onblur="if(this.value=='') { this.value='Username'; }" /> <input type="password" class="textbox" name="password" value="password" onfocus="if(this.value == 'password') { this.value = ''; }" onblur="if(this.value=='') { this.value='password'; }" size="20"/> <label title="{$lang->remember_me_desc}"><input type="checkbox" class="checkbox" name="remember" checked="checked" value="yes" style="vertical-align: middle; margin-top: -1px;" /> Se rappeler</label> <span style="margin-left: 8px;"> <input type="submit" class="button" name="submit" value="Se connecter" /> <input type="hidden" name="action" value="do_login" /> </span> </form> </span> <span style="float: right; font-weight: bold; margin-top: 2px; margin-right: 10px;"> <img class="icon" src="http://fifa-fuma.info/forum/images/darkfusion/icons/key.png" alt="" /><a href="http://fifa-fuma.info/forum/member.php?action=lostpw">Mot de passe oublié?</a> - <img class="icon" src="http://fifa-fuma.info/forum/images/darkfusion/icons/register.png" alt="" /><a href="http://fifa-fuma.info/forum/member.php?action=register">S'enregister</a> </span> Tout ce bout de code, je l'ai pris dans header_welcomeblock_guest de MyBB ! Visiblement j'arrive à me connecter (même si en sortant du member.php il m'envoie sur l'index du forum et non de ma page web), mais quand je retourne sur la page, il me propose toujours de me log... J'sais pas si j'ai été très clair... Merci d'avance pour votre aide. Petite précision, au final tout ce que je veux, c'est utiliser le design du truc de login (enfin là comme il est présenté actuellement sur res_index.php ca me convient, pas grave si j'ai pas le fond ^^, et surtout, utiliser la même BDD pour pas que les gens aient à s'inscrire sur le forum et les pages web res_* Dernière précision, je viens de découvrir le php ce soir, donc soyez indulgents! RE: Utiliser login MyBB sur page externe - Saphir - 27-10-2013 Bonsoir djul. D'abord, sachez que la réponse à votre question a déjà été donnée plusieurs fois ici, aussi nous vous saurions gré d'utiliser le moteur de recherche à votre disposition sur MyBB.fr. La façon la plus simple de vérifier si une personne est connectée à votre forum est d'inclure le fichier global.php qui se trouve à la racine de MyBB. L'exemple ci-dessous pourra vous mettre sur la voie. Code PHP : <?php RE: Utiliser login MyBB sur page externe - djul - 27-10-2013 Je pense pas que votre réponse soit celle que ma question suppose ... De plus je ne sais pas trop quoi faire de votre code en fonction de ce que j'ai déjà fais. Et je vous assure que j'ai déjà parcouru tous les sujets se rapprochant de ce que je veux faire, mais aucun n'y répond réellement... Votre bout de code fait la même chose que ce que j'ai déjà fais en fait .... RE: Utiliser login MyBB sur page externe - Saphir - 27-10-2013 Vous avez votre formulaire de connexion. Lorsque vous vous connectez, MyBB insère un cookie dans votre navigateur qui indique que vous êtes connecté. Le fichier global.php permet de récupérer ce cookie. En incluant ce fichier global.php, vous aurez donc accès, entre autres, aux variables $mybb->user['uid'] qui contient votre identifiant utilisateur (supérieur à 0 si vous êtes effectivement connecté) et $mybb->user['username'] qui contient votre nom d'utilisateur. Dans l'exemple précédent, vous pouvez mettre, à la place de la première ligne echo... le contenu qui doit s'afficher pour un membre connecté, et à la place de la seconde ligne echo... le contenu qui doit s'afficher pour une personne qui n'est pas encore connectée (le formulaire de connexion, par exemple). RE: Utiliser login MyBB sur page externe - djul - 27-10-2013 Je suis désolé mais je comprends pas ... Alors ok j'ai le formulaire, et il fonctionne(car quand je vais voir sur le forum, je suis connecté), mais les soucis sont: * Après le passage par member.php, ca m'envoie sur: http://fifa-fuma.info/forum/index.php au lieu de http://fifa-fuma.info/forum/res_index.php * Quand je reviens sur http://fifa-fuma.info/forum/res_index.php il m'affiche toujours le formulaire, alors que je suis censé être enregistré. J'ai testé ça: <?php define("IN_MYBB", 1); define("THIS_SCRIPT", "res_index.php"); require_once "global.php"; if($mybb->user['uid'] > 0) { echo "Bonjour " . $mybb->user['username'] . " !"; } else { echo <span style="float: left; margin-left: 10px; margin-top: -1px;"> <form action="member.php" method="post"> <input type="text" class="textbox" name="username" value="Username" size="20" onfocus="if(this.value == 'Username') { this.value = ''; }" onblur="if(this.value=='') { this.value='Username'; }" /> <input type="password" class="textbox" name="password" value="password" onfocus="if(this.value == 'password') { this.value = ''; }" onblur="if(this.value=='') { this.value='password'; }" size="20"/> <label title="{$lang->remember_me_desc}"><input type="checkbox" class="checkbox" name="remember" checked="checked" value="yes" style="vertical-align: middle; margin-top: -1px;" /> Se rappeler</label> <span style="margin-left: 8px;"> <input type="submit" class="button" name="submit" value="Se connecter" /> <input type="hidden" name="action" value="do_login" /> </span> </form> </span> <span style="float: right; font-weight: bold; margin-top: 2px; margin-right: 10px;"> <img class="icon" src="http://fifa-fuma.info/forum/images/darkfusion/icons/key.png" alt="" /><a href="http://fifa-fuma.info/forum/member.php?action=lostpw">Mot de passe oublié?</a> - <img class="icon" src="http://fifa-fuma.info/forum/images/darkfusion/icons/register.png" alt="" /><a href="http://fifa-fuma.info/forum/member.php?action=register">S'enregister</a> </span> } ?> Mais du coup ca me met une page blanche, visiblement y'a un soucis au niveau de } ou de la fermeture du php Désolé encore mais je suis vraiment novice en la matière ^^ RE: Utiliser login MyBB sur page externe - Saphir - 27-10-2013 Vous ne pouvez pas mettre du HTML comme ça dans du PHP ! Dans le code ci-dessus, remplacez le deuxième "echo" par ?> et, juste avant le dernier } ajoutez <?php Par ailleurs, il me semble que le champ url permet de définir la page de redirection après connexion, vous pouvez le mettre juste après le premier champ caché, par exemple. Voila le résultat : Code PHP : <?php (à vérifier pour ce qui concerne la redirection, je ne suis pas sur de moi) EDIT : Il risque d'y avoir un problème avec les {$......}, remplacez-les par le texte correspondant si nécessaire. RE: Utiliser login MyBB sur page externe - djul - 27-10-2013 Bon visiblement ça fonctionne ! Y'a juste le coup de "il me semble que le champ url permet de définir la page de redirection après connexion, vous pouvez le mettre juste après le premier champ caché, par exemple" que je sais pas mettre en pratique. RE: Utiliser login MyBB sur page externe - Saphir - 27-10-2013 Je l'ai mis dans le code que je vous ai donné, il s'agit de la ligne Code PHP : <input type="hidden" name="url" value="res_index.php" /> ça fonctionne sur mon propre forum, essayez sinon avec Code PHP : <input type="hidden" name="url" value="http://fifa-fuma.info/forum/res_index.php" /> RE: Utiliser login MyBB sur page externe - djul - 27-10-2013 Oh pardon je n'avais pas vu que vous aviez remis le code dans son intégralité, chez moi le truc de code PHP sortait de l'écran du coup j'avais pas vu la barre de scrolling! La redirection est ok en effet, merci beaucoup pour votre aide ainsi que votre réactivité ! RE: Utiliser login MyBB sur page externe - Saphir - 27-10-2013 Je vous en prie. Bonne soirée à vous. Ceci est un message préformaté et peut ne correspondre qu'en partie à votre requête. Bonsoir djul. Votre requête a été marquée comme étant résolue. Si vous avez de nouveau besoin de nos services, n'hésitez pas à ouvrir une nouvelle discussion dans nos forums de support. Merci de l'intérêt que vous portez à MyBB ! |