hit7374 Posté 23 Octobre 2007 Posté 23 Octobre 2007 bonsoir, en passant à mysql 4 du nouveau serveur j'ai un soucis de gestion des mots de passe cryptés, j'ai lu qu'il ne s'agissait pas de cryptage mais de hachage. j'ai ce code qui fonctionne normalement pour gérer l'inscription $q = "INSERT INTO USERS (Nom,Prenom,Acces,Login,Pwd,DefaultPage) ";$q .= "VALUES (UCASE('" . addslashes(cleantext($Nom)) . "'),UCASE('" . addslashes(cleantext($Prenom)) . "'),'" . $Acces . "','" . addslashes(cleantext($Login)) . "',password('" . addslashes(cleantext($Pwd)) . "'),'" . $DefaultPage . "')"; ensuite je veux lire et autoriser l'acces $q = "SELECT IDUser,Nom,Prenom,Acces,DefaultPage FROM USERS WHERE Login = '" . trim($_POST['login']) . "' AND Pwd = PASSWORD('" . trim($_POST['pwd']) . "')"; là ça ne marche plus sous mysql4 je ne peux pas utiliser OLD_PASSWORD car les Pwd générés maintenant sont sous le nouveaux système. j'ai cherché un peu partout sans réponse. merci du coup de main JP
marcb Posté 23 Octobre 2007 Posté 23 Octobre 2007 Bonsoir, Quelle est la taille de ton champ 'Pwd'. Il faut qu'il fasse (au moins) 16 caractères. M
hit7374 Posté 24 Octobre 2007 Auteur Posté 24 Octobre 2007 bonjour, oui il fait bien 16 caractères par contre j'ai une valeur du type *9E9F3A84C40EF2C avec un * au début j'ai lu et vérifié que le jeu était bien UTF-8 Unicode (utf8) avec un interclassement utf8_ general_ci sur le site mysql j'ai lu aussi qu'il valait mieux que le champ soit de type blob au lieu de char ou varchar je cherche encore
Dan Posté 24 Octobre 2007 Posté 24 Octobre 2007 Il faut lancer /usr/bin/mysql_fix_privilege_tables mot_de_passe_root_mysql tout simplement !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant