Probleme de condition en javascript !

Fermé
Julien - 28 nov. 2009 à 14:07
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 - 28 nov. 2009 à 17:43
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 !
A voir également:

8 réponses

avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
28 nov. 2009 à 14:27
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
Cela ne marche pas, la condition affiche uniquement pseudo libre :(
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
28 nov. 2009 à 14:39
Au lieu de faire la condition, fait une alerte pour voir le texte envoyé.
0
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
28 nov. 2009 à 14:40
encore une raison de ne pas utiliser jquery et de coder soi même :p
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
28 nov. 2009 à 14:43
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
28 nov. 2009 à 14:44
sans doute mais j'adore descendre les bibliotheques :p tu me connais :D
0
quand j'utilise une alert, le script me retourne bien un 1 ou un 0, pas d'erreur dans le fichier php :(
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
28 nov. 2009 à 15:08
Ç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
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55
28 nov. 2009 à 15:39
aussi long qu'une fonction créer sans jquery :D
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505 > resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010
28 nov. 2009 à 17:32
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
resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010 55 > avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025
28 nov. 2009 à 17:33
generalment tu en fait un pour tous et un pour internet explorer :) donc 2 c'est pas la mer à boire
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505 > resalut Messages postés 784 Date d'inscription vendredi 26 juin 2009 Statut Membre Dernière intervention 21 janvier 2010
28 nov. 2009 à 17:43
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
même résultat qu'avant, pseudo toujours libre :(
0