Savez-vous si phpbb crypte 2 fois en MD5 car je fait un formulaire de connection mais pour le mot de
passe je ne le crypte qu'une seule fois et le mot de passe de ma bbd n'est pas égale a celui que
j'ai crypté
oui mais moi quand j'ai fait un formulaire de connection et quand je me connect je crypte le mot de
passe donc normalement il est comme celui qui est dans la BBd de mon forum et ben en fait s'est pas
du tout parreil.
//on simplifie les variables
$pseudo = $_POST['pseudo'];
$pass = md5($_POST['pass']);
//on se connecte à MySQL
mysql_connect("xxxxxxx", "cobix25", "xxxxxx");
mysql_select_db("xxxxx");
$select = mysql_query("SELECT * FROM `phpbb_users` WHERE username='".$pseudo."'
AND user_password='".$pass."'") or die(mysql_error()); //on fait
la requête SQL avec les variables à l'intérieur
$select2 = mysql_fetch_array($select);
if($pseudo == $select2['username'] && $pass ==
$select2['user_password']) //si le login et le pass son correct
{
$_SESSION['pseudo'] = $pseudo;
?>
Vous êtes connecté sous <? echo $pseudo; ?> !<p>
<a href="connection.php">déconnecter</a> //le boutton déconnecter permet de
revenir à connection.php
<?
}
else //sinon
{
?>
Mauvais login ou mot de passe!
<?
}
c'est bizzare de vérifier deux fois ton mot de passe... essais d'enlever AND
user_password='".$pass."'" de ta requete..
ensuite, je n'y avais jamais pensé dans mes script mais si tu fait directement $pass =
md5($_POST['pass']); et que le mot de passe en question contient l'un de ces caractères ' " \ c'est
fichu.
sa marche mais un autre problème apparait ^^
les fonction et les session ne s'affichent pas
voila mon code :
Code:
<?
session_start();
//on simplifie les variables
$pseudo = $_POST['pseudo'];
$pass = htmlspecialchars($_POST['pass']);
//on se connecte à MySQL
mysql_connect("xxxxxxx", "cobix25", "xxxxxx");
mysql_select_db("xxxxxx");
$select = mysql_query("SELECT * FROM `phpbb_users` WHERE username='".$pseudo."'
AND user_password='".$pass."'") or die(mysql_error()); //on fait
la requête SQL avec les variables à l'intérieur
$select2 = mysql_fetch_array($select);
if($pseudo == $select2['username'] && $pass ==
$select2['user_password']) //si le login et le pass son correct
{
$_SESSION['pseudo'] = $pseudo;
?>
<html>
Vous êtes connecté sous <? echo $pseudo; ?> !<p>
<a href="connection.php">déconnecter< /a>
</html>
<?
}
else //sinon
{
?>
Mauvais login ou mot de passe!
<?
}