Bloquer les chiffres des pseudos

Voir le sujet précédent Voir le sujet suivant Aller en bas

  • 0

Astuce Bloquer les chiffres des pseudos

Message par Ea le Ven 10 Jan 2014 - 15:26

Bloquer les chiffres des pseudos


Cette astuce a pour fonction d'empêcher de choisir un pseudo avec un chiffre à l'inscription.

Mise en place

Il faut ajouter sur toutes les pages ( voir gestion des codes javascript ) ce script :

Code:
location.pathname=="/register" && location.search=="?agreed=true&step=2" && $(function(){
 
  var username_format = /^[^0-9]*$/;
  var format_notice = "Les chiffres ne sont pas autorisés dans les pseudos";
 
  var f = $('form[action=""][method="post"]');
  var p = $('#username_reg');
  var i = $('<span id="username_issue" />').text(format_notice).css({ "color":"red", "font-style":"italic", "display": "none"}).appendTo(p.parent());
 
  var u = function() {
    if(username_format.test($.trim(p.val()).replace(/\s+/g,' '))) {
      i.hide();
    } else {
      i.show();
      return false;
    }
  };
 
  p.on('change keyup', function(){ u() });
  $('input[type="reset"]', f).click(function(){ u() });
  $('input[type="submit"]', f).click(u);
  u();
 
});

Variantes

L'astuce utilise une expression régulière ( /^[^0-9]*$/ ) pour détecter si le pseudo ne contient pas de chiffre.

Voici quelques pages sur les expressions régulières :

  • OpenClassrooms.com
  • Comment ça marche.net
Et quelques exemples qu'on pourrait mettre à la place de /^[^0-9]*$/ :

  • N'autoriser un pseudo que si il ne contient que des chiffres :

    Code:
    /^[0-9]*$/

  • N'autoriser un pseudo que si il ne contient que des 0 et des 1 :

    Code:
    /^[01]*$/

  • N'autoriser un pseudo que si il contient 3 mots de 3 à 10 caractère ( sans chiffre ) :

    Code:
    /^(\b[^\d\s]{3,10}\b(\s+|$)){3}$/


Ea
Aidactif
Aidactif

Messages : 23417
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum