Vérifier l'existence d'un email en base de donnée avec BootstrapValidator

BootstrapValidator permet de créer simplement et rapidement des formulaires avec une vérification de l’intégrité des données fournies : format email, nombre de caractères, masque de code postal, numéro siret…un grand nombre de vérifications sont prêtes à l’emploi.

Mais ce plugin permet également d’effectuer des vérifications basées sur l’appel d’un script php en Ajax, par exemple, lors d’une inscription, pour vérifier si l’utilisateur est déjà inscrit ou pas !

VOICI COMMENT METTRE EN PLACE UNE VALIDATION AVEC L’APPEL D’UN SCRIPT PHP EN AJAX

  $(document).ready(function() {
    $('#formNl').bootstrapValidator({
       
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        fields: {
            email: {
                validators: {
                    notEmpty: {
                        message: 'Merci d\'indiquer votre adresse email'
                    },
                    emailAddress: {
                        message: 'Merci d\'indiquer une adresse mail valide'
                    },
                    remote: {
                    url: 'ajax/ajax_check_mail_nl.php',
                    type: 'POST',
                    delay: 1000,     // Send Ajax request every 2 seconds
					message: 'Cet email est déjà présent'
                }
                }
            }
            }
        })
});
 

 

Dans ce code, les deux premières vérifications sont classiques : champs vide, format email.

INTÉRESSONS NOUS À LA VÉRIFICATION « REMOTE »

Celle-ci prend ici quatre paramètres :

COMMENT SE PASSE L’APPEL AJAX

Notre script php va donc être appelé toutes les secondes, et il lui sera envoyé la variable $_POST[’email’] (nom du champs vérifié), avec la valeur tapée par l’utilisateur dans l’input.

Le script va donc ensuite simplement tester la présence dans la base de donnée de  $_POST[’email’] (ou toute autre opération dont vous avez besoin).

LA VALIDATION : VALEURS ATTENDUES

Afin de valider, ou pas, le champs, votre script php va devoir renvoyer une réponse au format json.

BootstrapValidator en fonction de la valeur de la variable valid, va alors valider, ou pas le champs.

Voici un exemple de retour de votre script php :

if (mysql_num_rows($result)==1)
  echo '{ "valid": false }';
else
  echo '{ "valid": true }';
 

Facile !

Pour en savoir plus : http://formvalidation.io/validators/remote/

D'autres articles


Les 10 plus beaux sites de restaurant

Mot de passe ne fonctionne pas après migration Prestashop

Une erreur classique, qui se résout rapidement

Ne perdez pas de temps et découvrez comment faire fonctionner votre nouvelle installation en changeant une ligne de code

Lire la suite

CHAMPS DYNAMIQUES QUI RENVOIENT UNE $_POST VIDE

Une petite erreur aux grandes conséquences

Des inputs rajoutés en Javascript par un appel en Ajax dans un simple formulaire, mais à la validation du formulaire, aucune trace de ces champs dans la variable POST reçue !

Lire la suite

Vérifier l'existence d'un email en base de donnée avec BootstrapValidator

Un appel en Ajax intégré à BootstrapValidator

Faire une vérification en base de donnée en Ajax à partir d'un test de formulaire avec BootstrapValidator

Lire la suite