Je suis en train d'essayer de créer un petit formulaire d'inscription. Si le nom d'utilisateur est déjà pris, je veux ajouter la classe 'red', sinon 'green'.
Le PHP fonctionne bien, et renvoie un "OUI" ou un "NON" pour déterminer si tout va bien.
Le CSS:
input {
border:1px solid #ccc;
}
.red {
border:1px solid #c00;
}
.green {
border:1px solid green;
background:#afdfaf;
}
Le Javascript J'utilise est:
$("#username").change(function() {
var value = $("#username").val();
if(value!= '') {
$.post("check.php", {
value: value
}, function(data){
$("#test").html(data);
if(data=='YES') {
$("#username").removeClass('red').addClass('green');
} if(data=='NO') {
$("#username").removeClass('green').addClass('red');
}
});
}
});
J'ai les trucs document.ready trop ... Tout fonctionne bien parce que le #test div html se transforme en "OUI" ou "NON", à l'exception de la dernière partie où je vérifie quelle est la valeur des données. Voici le php:
$value=$_POST['value'];
if ($value!="") {
$sql="select * FROM users WHERE username='".$value."'";
$query = mysql_query($sql) or die ("Could not match data because ".mysql_error());
$num_rows = mysql_num_rows($query);
if ($num_rows > 0) {
echo "NO";
} else {
echo "YES";
}
}
Avez-vous des erreurs JavaScript ou la classe change-t-elle? –
Quel est exactement votre problème maintenant? –
Oui, veuillez clarifier la question. "Tout fonctionne bien" ... alors qu'est-ce qui ne va pas? – VolkerK