ajax et variables js

pouloupoupo
WRInaute discret
WRInaute discret
 
Messages: 148
Inscription: 13 Avr 2008

ajax et variables js

Message le Mar Fév 17, 2009 23:04

Bonjour
Je suis pas trop à l'aise avec le javascript
J'ai une page php qui donne comme résultat "libre" ou "occupe"
je récupère ces valeurs en ajax

Code: Tout sélectionner
alert(resultat);


me donne bien "libre" ou "occupe"

par contre je n'arrive pas à tester ensuite:

Code: Tout sélectionner
if(resultat == "libre")....
else if(resultat == "occupe")....
{

Je ne rentre pas dans le if


Je ne comprends vraiment pas?


antinomx
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 277
Inscription: 23 Aoû 2008

Re: ajax et variables js

Message le Mer Fév 18, 2009 23:11

Salut,

Il faudrait que tu postes un plus gros morceau de code, parcequ'avec seulement ces 3 lignes difficile d'y voir clair. Surtout que l'erreur est probablement ailleurs...

pouloupoupo
WRInaute discret
WRInaute discret
 
Messages: 148
Inscription: 13 Avr 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 10:58

Merci d'avoir répondu
Je pensais que ça suffisait car je croyais me tromper au niveau du test des variables

J'appelle le script à partir d'un input
Code: Tout sélectionner
<input type='text' id='raison_sociale' name='raison_sociale' size='40' onKeyUp="verifRaison(this.value)" >


Le script en question :
Code: Tout sélectionner
function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}

function verifRaison(raison)
{
if(raison != '')
    {
    if(resultat = file('verifRaison.php?raison_sociale='+escape(raison)))
        {
        if(resultat == "libre")
        {
        writediv(raison+' : est un Nom de Menu est occupé !');
        }
        else if(resultat == "occupe")
        {
        writediv(raison+' : est un Nom de Menu libre vous pouvez l ajouter à la BD');
        }
        else
        {
        writediv(texte);
        }
    }
}

}

function writediv(texte)
{
document.getElementById('zonetraitement').innerHTML = texte;
}



Tout fonctionne sauf que je n'arrive pas à rentrer dans les boucles if(resultat == "libre") et else if(resultat == "occupe") comme si ça ne correspondait pas alors qu'un alert(resultat) juste avant me donne bien "libre" et "occupe"


Merci


antinomx
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 277
Inscription: 23 Aoû 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 11:59

Bon déjà je pige pas trop pourquoi tu t'embète à récupérer la variable bizarrement (ajax file()+escape) alors que ta fonction te la renvoie déjà dès le début (onkeyup="verifRaison(this.value)" et puis tu devrais plutôt utiliser un switch en lieu et place des structures conditionnelles, ton code y gagnerai en clarté.

Le principe de la vérificaition JS c'est de prendre le pas sur celle en php, qui ne sera utilisée que lorsque le client n'a pas le JS d'activé.

Code: Tout sélectionner
function verifRaison(raison) {

   if(raison != null) {
   
      switch (raison) {
      
         case 'libre':
            writediv('Libre : est un Nom de Menu libre vous pouvez l\'ajouter à la BD');
         break;
      
         case 'occupe':
            writediv('Occupé : est un Nom de Menu est occupé !');
         break;
      
         default :
            writediv(texte); //Mais quel texte ?
      }
   
   }
   
}   


julienr
WRInaute impliqué
WRInaute impliqué
 
Messages: 913
Inscription: 5 Aoû 2003

Re: ajax et variables js

Message le Jeu Fév 19, 2009 12:11

essaye ceci :
Code: Tout sélectionner
alert( '[' + resultat + ']' );

pouloupoupo
WRInaute discret
WRInaute discret
 
Messages: 148
Inscription: 13 Avr 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 12:24

julienr a écrit:essaye ceci :
Code: Tout sélectionner
alert( '[' + resultat + ']' );


Même résultat que
Code: Tout sélectionner
alert(resultat);


antinomx ->Je vais essayer de revoir le code car c'est du copier coller et je suis pas du tout à l'aise avec le js
Mais le problème est quand même bizarre non?


julienr
WRInaute impliqué
WRInaute impliqué
 
Messages: 913
Inscription: 5 Aoû 2003

Re: ajax et variables js

Message le Jeu Fév 19, 2009 12:45

pouloupoupo a écrit:Même résultat que
Code: Tout sélectionner
alert(resultat);



normalement non :-)

pouloupoupo
WRInaute discret
WRInaute discret
 
Messages: 148
Inscription: 13 Avr 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 14:06

julienr a écrit:
pouloupoupo a écrit:Même résultat que
Code: Tout sélectionner
alert(resultat);



normalement non :-)


hum que dois-je en déduire? :)


antinomx
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 277
Inscription: 23 Aoû 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 14:37

pouloupoupo a écrit:
julienr a écrit:
pouloupoupo a écrit:Même résultat que
Code: Tout sélectionner
alert(resultat);



normalement non :-)


hum que dois-je en déduire? :)


Que le code que tu souhaites mettre en oeuvre est vraiment "foireux"...

T'as essayé celui que j'ai posté un peu plus haut ?


julienr
WRInaute impliqué
WRInaute impliqué
 
Messages: 913
Inscription: 5 Aoû 2003

Re: ajax et variables js

Message le Jeu Fév 19, 2009 14:43

bah si je comprends bien

Code: Tout sélectionner
alert( resultat );

if( resultat == 'libre' )
{
    alert( 'resultat = libre' );
}
else if( resultat == 'occupe' )
{
   alert( 'resultat = occupe' );
}
else
{
   alert( 'resultat = unknow' );
}


1/ si tu as resultat = unknow c'est que resultat contient des caractères non imprimable ou d'encodage
2/ si pas d'alert après alert( resultat ) c'est qu'il y a une erreur de syntaxe et que la suite du script ne s'execute pas

pouloupoupo
WRInaute discret
WRInaute discret
 
Messages: 148
Inscription: 13 Avr 2008

Re: ajax et variables js

Message le Jeu Fév 19, 2009 15:45

antinomx -> si j'essay ton code je n'ai plus de référence à ma fonction file donc plus de requête sur mon fichier php

julien -> en effet j'ai résultat = unknown

J'avais pensé à un pb d'encodage car je suis en utf8


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité