Mot de passe dans une chambs mysql

Moritus Messages postés 130 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 23 novembre 2011 - 20 nov. 2007 à 14:15
Moritus Messages postés 130 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 23 novembre 2011 - 21 nov. 2007 à 00:49
bonjour,

Dans phpmyadmin on peut mettre un champ en 'PASSWORD' qui crypte le mot de passe...

dans ma page de connexion, on me dit que j'ai pas le bon mot de passe...

J'ai essayer les fonctions PASSWORD() et CHA1() dans ma requete sql mais ca ne fonctionne pas...


VOICI MON CODE

include('../includes/db_login.php');

if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
extract($_POST);

$sql = "SELECT password,name FROM players WHERE login='$login'";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_assoc($req);

if($password != $pass) {
include('../includes/header.inc.php');
echo '<center>Mauvais login / password. Merci de recommencer</center>';

exit;
}
else {
session_start();
$_SESSION['login'] = $login;
$_SESSION['name']= $data['name'];
include('redirect.php');
}
}
else {
echo 'Vous avez oublié de remplir un champ.

';
exit;
};
mysql_close();
?>


Pouvez vous me donner un petit coups de main!

Merci

4 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
20 nov. 2007 à 15:23
Hello,

avec SHA1(), pas avec PASSWORD() qui peut poser soucis :
SELECT count(*) FROM players WHERE login '$login' AND password SHA1($password)
0
Moritus Messages postés 130 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 23 novembre 2011
20 nov. 2007 à 23:55
Salut,

Rien a faire ca ne fonctionne pas...

si je met le code que tu écrit, pour que ca fonctionne, je doit enlever tous mon code en dessous de ma requete sql....alors la peut importe le mot de pass je suis capable de me loggé...
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
21 nov. 2007 à 00:34
Je ne vais pas tout te mâcher...
tu dois récupérer le résultat du count(*), et donc utiliser un alias par exemple puisque tu utilises fetch_assoc(), s'il est à 1, le couple login/pwd est bon, sinon non.
0
Moritus Messages postés 130 Date d'inscription jeudi 22 décembre 2005 Statut Membre Dernière intervention 23 novembre 2011
21 nov. 2007 à 00:49
Youppie...ou presque...

j'ai réussi à faire fonctionner le code mais avec PASSWORD()

voici le bout de code modifier

$sql "SELECT * FROM players WHERE password PASSWORD('$pass')";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_assoc($req);

if ($data['login'] != $login) {



Maintenant tu disais qu'il étais mieux d'utilisé SHA1() mais j'ai l'impression qu'il ne l'encrypte pas comme faut parce que le code ne me retourne pas d'inscription dans la base de donné

Est-ce correct de laisser password() sinon je ne sais pas koi changer pour faire fonctionner le code

merci pour ton aide
0
Rejoignez-nous