Php/sql : password avec accents
gryzzly
Messages postés
4608
Date d'inscription
Statut
Contributeur
Dernière intervention
-
gryzzly Messages postés 4608 Date d'inscription Statut Contributeur Dernière intervention -
gryzzly Messages postés 4608 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir,
Encore moi :-) Maintenant que mon soucis de requete est fini, il reste un point critique dans ma zone membre :
1) l'utilisateur s'enregistre (login, mdp, mail), il peut choisir login et mdp avec ou sans majuscule, avec ou sans accents. ca ne pose aucun probleme, les données sont en registrées dans la base.
ex :
je m'enregistre avec le login : testé et mdp : testé --> enregistrement possible
2) l'utilisateur peut maintenant se connecter :
si il a un login avec accents, ca ne pose pas de problemes à la connection, le login est bien reconnu comme existant dans la bdd ; en revanche, si il a un mdp avec accents, impossible de le logguer !
ex :
je m'enregistre avec le login : testé et mdp : testé --> login avec accent reconnu, mais mdp avec accent non reconnu et connection impossible a la zone membre
une idée (hormis demander de ne pas choisir de mdp sans accents et sans caractères spéciaux car on est jamais sur de ce que va faire l'utilisateur et s'il va respecter la consigne) ? est lié au type de champ (password) ? j'ai vérifié, je n'ai appliqué aucun traitement particulier a l'un ou a l'autre qui amenerait ce probleme.
--> si vous aviez la solution soit pour interdire tous les caractères spéciaux sur un champ password ou alors permettre de les lire (la deuxieme serait mieux...
ps : base encodée latin1 general cs
merci !
Encore moi :-) Maintenant que mon soucis de requete est fini, il reste un point critique dans ma zone membre :
1) l'utilisateur s'enregistre (login, mdp, mail), il peut choisir login et mdp avec ou sans majuscule, avec ou sans accents. ca ne pose aucun probleme, les données sont en registrées dans la base.
ex :
je m'enregistre avec le login : testé et mdp : testé --> enregistrement possible
2) l'utilisateur peut maintenant se connecter :
si il a un login avec accents, ca ne pose pas de problemes à la connection, le login est bien reconnu comme existant dans la bdd ; en revanche, si il a un mdp avec accents, impossible de le logguer !
ex :
je m'enregistre avec le login : testé et mdp : testé --> login avec accent reconnu, mais mdp avec accent non reconnu et connection impossible a la zone membre
une idée (hormis demander de ne pas choisir de mdp sans accents et sans caractères spéciaux car on est jamais sur de ce que va faire l'utilisateur et s'il va respecter la consigne) ? est lié au type de champ (password) ? j'ai vérifié, je n'ai appliqué aucun traitement particulier a l'un ou a l'autre qui amenerait ce probleme.
--> si vous aviez la solution soit pour interdire tous les caractères spéciaux sur un champ password ou alors permettre de les lire (la deuxieme serait mieux...
ps : base encodée latin1 general cs
merci !
A voir également:
- Php/sql : password avec accents
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Logiciel sql - Télécharger - Bases de données
- Alert php ✓ - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
3 réponses
Salut !
en revanche, si il a un mdp avec accents, impossible de le logguer !
Quel traitement appliques-tu au mot de passe saisi avant d'effectuer la recherche ?
--> si vous aviez la solution soit pour interdire tous les caractères spéciaux sur un champ password ou alors permettre de les lire (la deuxieme serait mieux...
Je suis partisan d'interdire la saisie des caractères spéciaux.
Ça peut être fait avec une expression régulière, en javascript côté client ou en PHP côté serveur.
en revanche, si il a un mdp avec accents, impossible de le logguer !
Quel traitement appliques-tu au mot de passe saisi avant d'effectuer la recherche ?
--> si vous aviez la solution soit pour interdire tous les caractères spéciaux sur un champ password ou alors permettre de les lire (la deuxieme serait mieux...
Je suis partisan d'interdire la saisie des caractères spéciaux.
Ça peut être fait avec une expression régulière, en javascript côté client ou en PHP côté serveur.
Je re... j'etais sur alsacreation...
alors en fait, j'ai reussi a autoriser les accents... mais par contre le problème qui reste est expliqué ici : il concerne les caractères spéciaux.
https://forum.alsacreations.com/topic-20-26151-1-Accents-dans-les-mots-de-passe.html#p198205
Je suis intéressé donc par la possibilité d'interdire les caractères spéciaux, mais donc il me faudrait un exemple de script qui teste la présence de ces caractères et refuserait l'enregistrement si il y en a !
Merci!
alors en fait, j'ai reussi a autoriser les accents... mais par contre le problème qui reste est expliqué ici : il concerne les caractères spéciaux.
https://forum.alsacreations.com/topic-20-26151-1-Accents-dans-les-mots-de-passe.html#p198205
Je suis intéressé donc par la possibilité d'interdire les caractères spéciaux, mais donc il me faudrait un exemple de script qui teste la présence de ces caractères et refuserait l'enregistrement si il y en a !
Merci!
Salut !
alors en fait, j'ai reussi a autoriser les accents.
C'était dû à quoi ?
mais donc il me faudrait un exemple de script qui teste la présence de ces caractères et refuserait l'enregistrement si il y en a !
Ce code contrôle, en javascript côté client, la saisie du login / mot de passe en n'acceptant que les lettres et les chiffres:
C'est généré avec PEAR::Quickform.
_
alors en fait, j'ai reussi a autoriser les accents.
C'était dû à quoi ?
mais donc il me faudrait un exemple de script qui teste la présence de ces caractères et refuserait l'enregistrement si il y en a !
Ce code contrôle, en javascript côté client, la saisie du login / mot de passe en n'acceptant que les lettres et les chiffres:
<html> <head> <script type="text/javascript"> //<![CDATA[ function validate_formlogin(frm) { var value = ''; var errFlag = new Array(); var _qfGroups = {}; _qfMsg = ''; value = frm.elements['login'].value; if (value == '' && !errFlag['login']) { errFlag['login'] = true; _qfMsg = _qfMsg + '\n - Login requis'; } value = frm.elements['login'].value; var regex = /^[a-zA-Z0-9]+$/; if (value != '' && !regex.test(value) && !errFlag['login']) { errFlag['login'] = true; _qfMsg = _qfMsg + '\n - Chiffres et lettres uniquement pour le login'; } value = frm.elements['passw'].value; if (value == '' && !errFlag['passw']) { errFlag['passw'] = true; _qfMsg = _qfMsg + '\n - Mot de passe requis'; } value = frm.elements['passw'].value; var regex = /^[a-zA-Z0-9]+$/; if (value != '' && !regex.test(value) && !errFlag['passw']) { errFlag['passw'] = true; _qfMsg = _qfMsg + '\n - Chiffres et lettres uniquement pour le mot de passe'; } if (_qfMsg != '') { _qfMsg = 'Erreur de saisie :' + _qfMsg; _qfMsg = _qfMsg + '\nVeuillez corriger.'; alert(_qfMsg); return false; } return true; } //]]> </script> </head> <body> <form action="" method="post" name="formlogin" id="formlogin" onsubmit="try { var myValidator = validate_formlogin; } catch(e) { return true; } return myValidator(this);"> <div> <table border="0"> <tr> <td align="right" valign="top">Login : <font color="red" size="1">*</font></b></td> <td valign="top" align="left"><input name="login" type="text" value="<>" /></td> </tr> <tr> <td align="right" valign="top">Mot de passe :<font color="red" size="1">*</font></b></td> <td valign="top" align="left"><input name="passw" type="password" value="" /></td> </tr> <tr> <td valign="top" align="left"><input name="btnsubmit" value="Envoyer" type="submit" /></td> </tr> </table> </div> </form> </body> </html>
C'est généré avec PEAR::Quickform.
_
salut... pour les accents : je n'en ai aucune idée ! (peut être qu'en réalité c'etait déjà le cas, sauf que j'avais peut etre mis des caractères spéciaux avec, et donc j'ai fait le lien entr eles deux...)
Pour le script : tu aurais pas qqch de similaire coté serveur ? certaines personnes n'ont pas JS activé... et si ils font des bétises, j'ai pas envie de repasser derriere eux tout le temps :s
ce serait génial... sinon je chercherais ce soir, là j'ai po le temps!
Pour le script : tu aurais pas qqch de similaire coté serveur ? certaines personnes n'ont pas JS activé... et si ils font des bétises, j'ai pas envie de repasser derriere eux tout le temps :s
ce serait génial... sinon je chercherais ce soir, là j'ai po le temps!