Probleme de condition en javascript !

Julien -  
avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j'utilise un script pour vérifier la disponibilité d'un pseudo en live le script fonctionne bien, la page me retourne bien les données (sous forme de 1 ou 0) mais lorsque j'ajoute dans le script une condition qui traite le 1 et le 0 plus rien ne marche !

Voici le script en question:

function verifpseudo(pseudo)
{
$.ajax({
type: 'GET',
url: 'test.php',
data: 'pseudo='+pseudo,
dataType: 'ResponseText',
success: function(result){
if (result == 1)
{
document.getElementById('test').innerHTML = "Pseudo pas libre";
}
else
{
document.getElementById('test').innerHTML = "Pseudo libre";
}
}
});
}


Sa semble bête mais la condition refuse de fonctionner ! Si quelqu'un a une idée, je suis preneur !

Merci d'avance !
Configuration: Windows XP
Safari 532.0

8 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Entoure le 1 par des guillemées, car c'est une chaine de caractère qui est retourné et pas un nombre entiere (int).
    0
  2. Julien
     
    Cela ne marche pas, la condition affiche uniquement pseudo libre :(
    0
  3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Au lieu de faire la condition, fait une alerte pour voir le texte envoyé.
    0
  4. resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
     
    encore une raison de ne pas utiliser jquery et de coder soi même :p
    0
    1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Ce n'est sans doute pas de la faute à JQuery ...
      Je penses plutôt que son script ne retourne pas "1" car il y a une erreur PHP ou quelque-chose dans le genre.
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
     
    sans doute mais j'adore descendre les bibliotheques :p tu me connais :D
    0
  7. Julien
     
    quand j'utilise une alert, le script me retourne bien un 1 ou un 0, pas d'erreur dans le fichier php :(
    0
  8. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Ça donne quoi avec ça :
    function verifpseudo(pseudo) {
    	$.ajax({
    		type: 'GET',
    		url: 'test.php',
    		data: 'pseudo=' + pseudo,
    		dataType: 'ResponseText',
    		success: function(result) {
    			if(result == "1") {
    				document.getElementById('test').innerHTML = "Pseudo pas libre";
    				alert('Pseudo déjà pris');
    			} else {
    				document.getElementById('test').innerHTML = "Pseudo libre";
    				alert('Pseudo libre');
    			}
    		}
    	});
    }
    
    0
    1. resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
       
      aussi long qu'une fonction créer sans jquery :D
      0
      1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511 > resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention  
         
        Oui, si la création de l'objet XHR se fait à l'aide d'une fonction parce que avec toutes les conditions en fonction des browsers, c'est assez long.
        0
      2. resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55 > avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention  
         
        generalment tu en fait un pour tous et un pour internet explorer :) donc 2 c'est pas la mer à boire
        0
      3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511 > resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention  
         
        Perso j'utilise plutôt une fonction "getXMLHttpRequest" qui retourne le bon en fonction du navigateur.
        La fonction :
        function getXMLHttpRequest() {
        	var xhr = null;
        	
        	if (window.XMLHttpRequest || window.ActiveXObject) {
        		if (window.ActiveXObject) {
        			try {
        				xhr = new ActiveXObject("Msxml2.XMLHTTP");
        			} catch(e) {
        				xhr = new ActiveXObject("Microsoft.XMLHTTP");
        			}
        		} else {
        			xhr = new XMLHttpRequest(); 
        		}
        	} else {
        		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
        		return null;
        	}
        	
        	return xhr;
        }
        
        Et un exemple de code :
        function ajouterMessage(zone_message) {
        	texte_message = zone_message.value;
        	zone_message.value = '';
        	
        	xhr = getXMLHttpRequest();
        	if (xhr && xhr.readyState != 0) {
        		xhr.abort();
        	}
        	
        	xhr.open('POST','chat.ajax.php',true);
        	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        	xhr.send('action=ajouter&message='+texte_message);
        }
        0
  9. Julien
     
    même résultat qu'avant, pseudo toujours libre :(
    0