Bon pour autoriser les caractères spéciaux ça ce passe dans le fichier mx_userfuntion.php du répertoire /includes/
Pour la fonction: function userCheck
rechercher
if (ereg("[^a-zA-Z0-9 _-]", $pvs['uname']) || is_numeric($pvs['uname'])) {
return _ERRORINVNICK;
}
C'est une expression régulière
http://www.commentcamarche.net/php/phpreg.php3http://www.vulgarisation-informatique.com/expressions-regulieres.phphttp://www.mines.inpl-nancy.fr/~tisseran/cours/php/php3.htmlhttp://phpcodeur.net/articles/php/regex1http://www.expreg.com/motif.phphttp://www.expreg.com/metacaracteres.phpVa falloir remplacer
"[^a-zA-Z0-9 _-]"
Les expressions entre crochets ( []) indiquent les caractères qui sont permis à un endroit précis d'un modèle.
En fait dans notre cas on autorise: les lettres minuscules de a à z, les lettres majuscules de A àZ, les chiffres de 0 à 9, underscore, le tiret.
par l'expression qui autorise les crochets
Pour un caractère faisant partie des caractères spéciaux (.^()[]$+-*?|\), il suffit de le faire précéder d'un backslash "\" (sauf dans les expressions entre crochets). La caractère backslash doit donc être doublé.
Jsui pas spécialist regex mais je pense que ça devrait fonctionner avec ça, à confirmer....
"[^a-zA-Z0-9 _-\\[\\]]"
Mince je vient de lire ça:
N'oubliez pas que les expressions entre crochets sont une exception à cette règle.
En effet à l'intérieur des crochets, tous les caractères spéciaux, y compris l'antislash , perdent leurs puissances spéciales (en clair, dans les crochets, vous ne devez pas protéger les caractères spéciaux avec un \).
Donc sa serait plutot, à confirmer
"[^][a-zA-Z0-9 _-]"