Vérification de syntaxe
Résolu
barnabe0057
Messages postés
14455
Date d'inscription
Statut
Contributeur
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Etant débutant en PHP, je souhaiterais savoir si ma syntaxe est correcte :
Sachant que je voudrais générer un identifiant de 40 caractères de long à partir d'un email et d'un mot de passe concaténés.
Merci d'avance.
Etant débutant en PHP, je souhaiterais savoir si ma syntaxe est correcte :
$account_id = substr(password_hash($email . $password, PASSWORD_BCRYPT), -40);
Sachant que je voudrais générer un identifiant de 40 caractères de long à partir d'un email et d'un mot de passe concaténés.
Merci d'avance.
Configuration: Linux / Firefox 91.0
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
pourquoi ne testes-tu pas ton code afin d'en vérifier la syntaxe?
pourquoi ne testes-tu pas ton code afin d'en vérifier la syntaxe?
Le truc, c'est que la syntaxe est correcte, mais qui dit identifiant de compte dit identifiant unique, certes il est très peu probable qu'un doublon arrive sur 40 caractères, mais statistiquement ce n'est pas exclus.
De toute façon password_hash, comme son nom l'indique est réservé à un usage précis.
Des scripts pour générer un identifiant unique en php, doit y en avoir des pelles sur internet ^^
De toute façon password_hash, comme son nom l'indique est réservé à un usage précis.
Des scripts pour générer un identifiant unique en php, doit y en avoir des pelles sur internet ^^
Bref, maintenant la ligne en question fonctionne, par contre j'obtiens ce message d'erreur :
Voilà mon fichier index.php :
Par contre je me rends compte d'un problème : pour un même mot de passe, chaque requête génère un hash différent du précédent, j'imagine que c'est à cause du sel qui est généré automatiquement par password_hash, donc comment comparer pour vérifier la validité du mot de passe ? Je suis obligé de passer par password_verify ?