Voir la version complète : Formulaire d'identification à vBulletin
Voilà, j'ai un site, et il y a un forum Vbulletin dessus.
Ce que je voudrais faire, ce serai que les inscrits du forum soient inscrits sur le site, et que les admins forum soit les admins du site.
Pour ça, j'aimerai déjà commencé par une identification avec un petit formulaire tout bête, puis créée un cookie qui ait le même nom que celui que utilise Vbulletin.
Mais un problème se pose à moi :
j'ai déjà remarqué que Coldfusion s'est lancé dans quelque chose dans le genre, mais son truc je l'avais déjà fais, et je me suis apperçu que les mots de passes n'étaient pas cryptés en md5, mais grace à un algorythme "fait maison"....
J'aurai donc aimé savoir comment marche cet algorythme ? Si je peux avoir la réponse quelque part ou si je dois passer encore quelques semaines dessus à chercher ?
J'ai vu qu'il y a le 'mot de passe' + 'salt' ... mais bon.. quand je fais ça puis crypte le tout en md5, ça me donne quelque chose de différents par rapport au mot de passe que j'ai entré dans la base de données...
Donc puis-je avoir un peu d'aide si quelqu'un a la réponse, ou c'est moi qui doit vous la donner dans quelques temps ? ;)
Si je me rappel bien déja, c une encryption en sens unique, tu peux crypter, mais pas décrypter, donc fo bien que tu compare tes deux mot de passes apres que tous les deux soit crypter, vala ;) pour le reste je peux pas t'aider, je sais pas trop comment ca se passe, sorry...
Pitchoune
19/03/2004, 01h31
Je sais pas non plus, et ça peut gravement m'intéresser :)
Rien qu'avec le futur manuel de vB3, ça va bien le faire, alors après.... :)
oui, je savais que c'était à sens unique ça.. et je sais qu'il faut comparer apres encryption, mais le seul truc, c'est que les deux uune fois encryptés ne sont pas identiques, donc c'est un peu dur d'être identifié apres ! :P
Et donc Pitchoune il y aura un manuel vB3 ? Il pourra m'être utile ? ^^
Pitchoune
19/03/2004, 02h10
Il y a un manuel pour vB2, ils sont en train de finir le manuel pour vB3.
Je pense que le nouveau manuel sera une grosse surprise pour tout le monde :)
http://www.vbulletin.com/forum/showthread.php?p=630097#post630097
et.... tu crois que si je demande au forum de www.vBulletin.com ils me répondront ? Ou il vaut mieux que j'attende unne réponse ici tout en cherchant moi même la solution ? :004:
Pitchoune
19/03/2004, 02h16
Je ne pense pas qu'ils te répondent, c'est une sorte de hack que tu veux utiliser, et ils ne veulent pas donner d'aide pour cela. Pour les hacks, c'est www.vbulletin.org (http://www.vbulletin.org) .
Sinon, attends directement quelques temps ici-même, il doit y avoir du monde qui connaissent comment cela fonctionne :)
Je suis pas sur que ce soit vraiment un hack que je veuille... Moi tout ce que je veux, c'est comment encrypter un champs de forumulaire, avec le même algorythme utilisé lors de l'identification sur le forum :P
Bon j'ai regarder en vitesse, en fait le 'salt' c tt simplement un champ de la table user ;) vala donc pas tres compliqué, tu concatene le password entré plus le contenu du salt, et hop un md5 dessus, enfin a verifier, je te dit sans verifier ;)
Ce que tu as dis, c'est ce que j'avais testé en 1er, mais c'est pas ça, c'est légèrement plus compliqué, mais simple quand meme ! Je vous donne la solution dans le post suivant ! ;)
Alors, voilà donc le "fameux" code pour s'identifier.
Ca m'aura pris une petite soirée, et en chattant a droite a gauche, donc c'etait plus simple que ce que je pensais ! :P
Donc, le premier fichier est le formulaire (le nom de la page a peu d'importance) :
<form name="ident" method="post" action="ident.php">
<table width="40%" border="0" align="left">
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Nom</font></strong></td>
<td><input type="text" name="pseudo"></td>
</tr>
<tr>
<td><strong><font size="2" face="Arial, Helvetica, sans-serif">Mot de passe</font></strong></td>
<td><input name="pass" type="password" id="pass"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="Valider"></td>
</tr>
</table>
</form>
La deuxième pages est ident.php :
<?php
$dbhost = "localhost"; // Adresse du serveur MySQL
$dbuser = "root"; // Identifiant MySQL
$dbpass = ""; // Mot de passe MySQL
$dbbase = "vBulletin"; // Base de données où est installé vBulletin
if((empty($_POST['pseudo'])) || (empty($_POST['pass'])))
{
echo "Un des champs est vide ";
}
else
{
$pseudo=$_POST['pseudo'];
$pass = $_POST['pass'];
$db = @mysql_connect("$dbhost", "$dbuser", "$dbpass") or die(mysql_error());
@mysql_select_db("$dbbase",$db) or die(mysql_error());
$query = mysql_query("SELECT * FROM `user` WHERE `username` = '$pseudo' ") or die(mysql_error());
$data = mysql_fetch_array($query);
$password = md5(md5($pass) . $data['salt']);
if($password == $data['password']) {
echo "Bravo, tu as découvert ton mot de passe !"; //Remplacer par ce qu'on veut faire si le passe est bon.
}
else {
echo "Et non.. perdu... On va devoir t'éxécuter !! Adieu !"; //Remplacer par ce qu'on veut faire si le passe est mauvais.
}
}
?>
Bientôt je vous mettrai une fonction qui vous permettra de créer le cookie pour que vBulletin vous identifie automatiquement ;)
Alors a très bientôt pour la suite ! :P
Pitchoune
19/03/2004, 09h15
Pour le cookie, tu mets un vbsetcookie() et ça doit passer :)
bah moi ça me gèbe pas de faire un vbsetcookie() , mais le problème c'est que c'est une fonction créée par vBulletin , et qu'elle existe pas avec php !
Donc il faut que je le fasse "manuellement", parce que je veux faire un site totalement externe à vBulletin, mais qui se base quand même sur ses membres, administrateurs, etc... ;)
Pitchoune
19/03/2004, 13h58
Alors regarde du côté de ./includes/sessions.php :)
t'inquiète pas, je pense que j'y arriverai ! :P
Enfin.. si vous savez pas la réponse, j'en sais au moins autant que vous, parce que j'ai quand même un peu beaucoup l'habitude des forums, et j'ai un peu étudié les fichiers de vBulletin là ... ;)
Enfin bon.. quand ce sera prêt, je le mets ici online ou vous vous en fichez ?
Pour le cookie tout dépend du domaine du site et du domaine du forum. S'ils sont différents alors créer un cookie propre est utile. S'ils sont sur le meme domaine, créé un cookie pour le domaine (que tu peux récupérer par la base de donnée ou que tu inscris en dur dans le fichier php) l'identification devrait suffire au forum également (bref autant utiliser login.php si c'est sur le même domaine :) ).
ps : quelle réponse ? Il n'y a pas de question :p pour les cookies :)
baaah.. la page login.php elle est bien, mais son problème c'est qu'une fois identifié, elle redirige vers l'index du forum. Alors que moi je veux pas que les gens se retrouvent sur le forum, mais juste qu'ils reste sur le site et qu'une fois seulement qu'ils ont cliqué sur le lien "forum" ils se retrouvent dessus.
[ Pour info, le site est http://www.UniversOnLine.info et pour le forum c'est http://forums.UniversOnLine.info ! ]
Non elle ne redirige pas si tu prends bien soin d'insérer en valeur cachée du formulaire l'url actuelle :
<input type="hidden" name="url" value="url de la page actuelle">
ah oki ! bon, je vois que les admins ne servent finalement pas totalement a rien ! :p
Merci bien m'sieur (m'dame ?) :)
Monsieur je te prie et fais attention à ce que tu dis :), j'ai un titre qui ne laisse aucun doute sur mes intentions vis à vis de certains ;).
Manquerait plus que les admins servent à rien non mais.
baaah, j'ai déjà vu des admins inutiles !! :)
( pas sur ce forum pour le moment en tout cas, je te rassure ! ;) )
Mais là ça devient du hors sujet MONSIEUR ! :p
Darkstyler
19/03/2004, 17h13
Le mieux serait que tu crée un hack en prenant exemple sur la présentation de ceux déjà postés. Je suis sûr que ça en interressera plus d'un. ;)
bah les hack.. je sais pas trop comment on en fait, mais si tu me lances dessus.. où trouver les infos, les noms des champs dans les formulaires, les noms des variables, etc... moi ça m'interresserai, et je le ferai sans probleme ;)
Salut AZA !
Dis-moi, ce que tu cherches à faire m'intéresse beaucoup car je souhaiterai faire la même chose: tu en est où ?
MERCI !!!
David
Darkstyler
11/05/2004, 14h17
bah les hack.. je sais pas trop comment on en fait, mais si tu me lances dessus.. où trouver les infos, les noms des champs dans les formulaires, les noms des variables, etc... moi ça m'interresserai, et je le ferai sans probleme ;)
Tout ce qui est PHP et SQL nest pas mon domaine, pas trouvé le temps de m'y mettre ;)
Je te suggère d'effectuer une recherche sur google afin de trouver des tutos php.
J'en suis, comme je te l'ai dis par mail David, à la session car j'ai rien modifié depuis. Mais..... je me suis mis à reprendre le trravail il y a 1 semaine, donc là je vais mettre en place la récupération du cookie et de la session ;)
Je vous tiens au courant :)
Salut AZA !!!
Et maintenant ? As-tu réussi à crer le cookie pour lle forum ?! ca m'intéresse :)
Cordialement,
je me demande si il ya pas plus simple pour toi
il sufit de reprendre tout simplement le template de login et de l inclure dans une page quelconque
---> moi javai fait ca pour ce site : http://sssb.pulsion.net (http://sssb.pulsion.net/)
vBulletin® v.3.8.0 Beta 4, Copyright ©2000-2008, Jelsoft Enterprises Ltd. Tous droits réservés - Version française vbulletin-fr.org