par
Dom! » 05 mai 2009, 13:54
BOnjour à tous.
J'utilise ce script pour vérifier si un pseudo existe déja dans ma base.
<script type="text/javascript">
var bPseudo = false; // servira pour empêcher de poster le formulaire si vérification pseudo non ok
function req_pseudo(pseudo) {
//XMLHttpRequest est supporté par Internet Explorer 5.0+, Safari 1.2, Mozilla 1.0 / Firefox, Netscape 7
if(document.all) var XhrObj = new ActiveXObject("Microsoft.XMLHTTP"); //Internet Explorer
else var XhrObj = new XMLHttpRequest(); //Mozilla
content = document.getElementById("pseudo_check"); //zone d'affichage
XhrObj.open("POST", "verif_pseudo.php");
//Ok pour la page cible
XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4 && XhrObj.status == 200) {
if (XhrObj.responseText == 'OK') {
// ok nouveau pseudo
content.innerHTML='<img src="images/accepter.png" alt=""/> Ok';
} else {
// erreur pseudo déjà existant
content.innerHTML='<img src="images/refuser.png" alt=""/> Déjà pris';
}
}
}
XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
XhrObj.send('p='+pseudo);
}
function testChamps(f) {
bPseudo = false; // on va revalider le champ
req_pseudo(f.pseudo.value);
if (!bPseudo) {
alert('Erreur pseudo');
return false;
}
}
</script>
Mon probléme est que le message Déja pris s'affiche même quand le pseudo n'est pas pris.
Avez vous une idée de l'erreur ?
Merci d'avance.
BOnjour à tous.
J'utilise ce script pour vérifier si un pseudo existe déja dans ma base.
[php]<script type="text/javascript">
var bPseudo = false; // servira pour empêcher de poster le formulaire si vérification pseudo non ok
function req_pseudo(pseudo) {
//XMLHttpRequest est supporté par Internet Explorer 5.0+, Safari 1.2, Mozilla 1.0 / Firefox, Netscape 7
if(document.all) var XhrObj = new ActiveXObject("Microsoft.XMLHTTP"); //Internet Explorer
else var XhrObj = new XMLHttpRequest(); //Mozilla
content = document.getElementById("pseudo_check"); //zone d'affichage
XhrObj.open("POST", "verif_pseudo.php");
//Ok pour la page cible
XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4 && XhrObj.status == 200) {
if (XhrObj.responseText == 'OK') {
// ok nouveau pseudo
content.innerHTML='<img src="images/accepter.png" alt=""/> Ok';
} else {
// erreur pseudo déjà existant
content.innerHTML='<img src="images/refuser.png" alt=""/> Déjà pris';
}
}
}
XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
XhrObj.send('p='+pseudo);
}
function testChamps(f) {
bPseudo = false; // on va revalider le champ
req_pseudo(f.pseudo.value);
if (!bPseudo) {
alert('Erreur pseudo');
return false;
}
}
</script>[/php]
Mon probléme est que le message Déja pris s'affiche même quand le pseudo n'est pas pris.
Avez vous une idée de l'erreur ?
Merci d'avance.