[AJAX jQuery] : Requête sur BDD pour controller presence email
Bonjour,
je suis a bout, c'est ma première expérience avec AJAX et je rencontre des soucis, voyez par vous même :
Le site ici
Cliquez sur INFOS, puis faites semblant de vous inscrire :
l'email non disponible : marc@yopmail.com
email disponible : tous les autres
le problème : la requête ajax me dit que tous les mails ne sont pas disponibles (oh le menteur)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| pic1 = new Image(16, 16);
pic1.src = "images/chargement1.gif";
$(document).ready(function(){
$("#email").change(function() {
var eml = $("#email").val();
if(eml.length >= 3)
{
$("#status").html('<img src="images/chargement1.gif" > Vérification de la disponibilité...');
$.ajax({
type: "POST",
url: "validerEmail.php",
data: "email="+ eml,
success: function(msg){
$("#status").ajaxComplete(function(event, request, settings){
if(msg == 'OK')
{
$("#email").removeClass('object_error'); // if necessary
$("#email").addClass("object_ok");
$(this).html(' <img src="images/accept.png" align="absmiddle"> <font color="Green"> E-mail disponible </font> ');
}
else
{
$("#email").removeClass('object_ok'); // if necessary
$("#email").addClass("object_error");
$(this).html(' <img src="images/cross.png" align="absmiddle"> <font color="Red"> E-mail non disponible </font> ');
}
});
}
});
}
else
{
$("#status").html('<font color="red">The username should have at least <strong>3</strong> characters.</font>');
$("#email").removeClass('object_ok'); // if necessary
$("#email").addClass("object_error");
}
});
}); |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?php
// This is a sample code in case you wish to check the username from a mysql db table
include ("/_connexionlocal.php");
if(isSet($_POST['email']))
{
$email = $_POST['email'];
$sql = mysql_query("SELECT email FROM utilisateurs WHERE email='$email'");
if(mysql_num_rows($sql))
{
echo '<font color="red">L\'email rempli : <STRONG>'.$email.'</STRONG> est déjà présent.</font>';
}
else
{
echo 'OK';
}
}
?> |
Je vous remercie d'avance de l'aide précieuse pour me débloquer :)
2ème question : comment faire pour que tant que l'email rentrée est non disponible, refuser l'envoi du formulaire (sachant que j'ai déjà d'autres test JS et PHP).