kanabeach_33 Posted February 22, 2011 Share Posted February 22, 2011 Bonjour,En fait j'ai créé une sorte de blog a coté de mon site e commerce, et sur ce blog je souhaite que les membres puissent se connecter a un espace membre. Et donc pour s'y connecter, utiliser le même email et mot de passe que ceux enregistré dans la BDD prestashop.J'ai bien réussi a vérifié si l'email existe bien, cependant avec le système de cryptage du password client, je n'arrive pas a tester si celui ci est le bon.Savez vous comment faire pour utiliser le password de la table ps_customer (clients)?Merci pour votre aide! Cordialement,Quentin Link to comment Share on other sites More sharing options...
Vincent Decaux Posted February 22, 2011 Share Posted February 22, 2011 Dans la classe Tools.php, tu as ce bout de code : static public function encrypt($passwd) { return md5(pSQL(_COOKIE_KEY_.$passwd)); } En clair, les mots de passe sont cryptés en MD5, mais ils sont avant concaténés avec une Key unique, que tu trouveras dans le fichier de config settings.inc.php dans le dossier Config. Link to comment Share on other sites More sharing options...
kanabeach_33 Posted February 22, 2011 Author Share Posted February 22, 2011 Merci pour votre réponse,j'ai bien testé celà, mais pSQL je ne le trouvais pas donc j ai inclus ces fichier dans mon fichier connexion.php qui test l email et le mot de passe:**************************************************************************************include('../prestashop/config/settings.inc.php');include('../prestashop/classes/Tools.php');include('../prestashop/classes/Db.php');Ainsi dans mon fichier connexion.php (qui recoit l email et le mot de passe), j y ai mis: $email = htmlspecialchars($_POST['email']); $mot_passe = htmlspecialchars($_POST['passwd']); $sql_infos = mysql_query("SELECT * FROM ps_customer WHERE email='".$email."'"); $donnees = mysql_fetch_assoc($sql_infos); //Comparaison du mot de passe. if ((md5(pSQL(_COOKIE_KEY_.$mot_passe))) == $donnees['secure_key']) { echo "ok"; } //Informe que le mot de passe est incorrect else { echo "pas ok"; }**************************************************************************************Voici le resultat:Notice: Use of undefined constant _PS_MAGIC_QUOTES_GPC_ - assumed '_PS_MAGIC_QUOTES_GPC_' in C:\wamp\www\store\classes\Db.php on line 255Notice: Use of undefined constant _PS_MYSQL_REAL_ESCAPE_STRING_ - assumed '_PS_MYSQL_REAL_ESCAPE_STRING_' in C:\wamp\www\store\classes\Db.php on line 259pas okmerci pour votre aide Link to comment Share on other sites More sharing options...
kanabeach_33 Posted February 22, 2011 Author Share Posted February 22, 2011 J'ai trouvé! Ca marche! MerciJ'ai tout regroupé dans mon fichier connexion.php: /*FONCTIONS NECESSAIRE AU CRYPTAGE MOT DE PASSE*/ include('../store/config/settings.inc.php'); //include('../store/classes/Tools.php'); //include('../store/classes/Db.php'); define('_PS_MYSQL_REAL_ESCAPE_STRING_', function_exists('mysql_real_escape_string')); define('_PS_MAGIC_QUOTES_GPC_', get_magic_quotes_gpc()); /** * Convert \n to * @param string $string String to transform * @return string New string */ function nl2br2($string) { return str_replace(array("\r\n", "\r", "\n"), ' ', $string); } /* Sanitize data which will be injected into SQL query * * @param string $string SQL data which will be injected into SQL query * @param boolean $htmlOK Does data contain HTML code ? (optional) * @return string Sanitized data */ function pSQL($string, $htmlOK = false) { if (_PS_MAGIC_QUOTES_GPC_) $string = stripslashes($string); if (!is_numeric($string)) { $string = _PS_MYSQL_REAL_ESCAPE_STRING_ ? mysql_real_escape_string($string) : addslashes($string); if (!$htmlOK) $string = strip_tags(nl2br2($string)); } echo "->".$string." "; return $string; } /** * Encrypt password * * @param object $object Object to display */ function encrypt($passwd) { return md5(pSQL($passwd)); } /*FIN DES FONCTIONS*/ ainsi je test avec : if (encrypt(_COOKIE_KEY_.$mot_passe) == $donnees['passwd'])alors c est bon celà vérifie bien avec bon cryptage Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now