IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Question sur un simple if qui ne fonctionne pas correctement


Sujet :

AJAX

  1. #1
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut [AJAX] Question sur un simple if qui ne fonctionne pas correctement
    Bonjour,

    J'ai ce code PHP qui filtre une table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    $sql_declotured = "SELECT Nom, Prenom, Matricule FROM etudiants WHERE Cloture = 1 ORDER BY Nom";
    	//echo $sql_declotured;
    	$query_declotured = mysql_query($sql_declotured);
    	$nombre = mysql_num_rows($query_declotured);
     
    	if($nombre > 0)
    	{
    		$return='{';
    		//ensuite chaque nom des options separes par des ":"
    		while($row = mysql_fetch_assoc($query_declotured)) 
    		{
    			//création de la liste déroulante des étudiants non clôturés
    			$return .='"'.$row["Matricule"].'":"'.$row["Nom"].' ' . $row["Prenom"].'",';	
    		}
    		//je remplace la derniere virgule par la ) dans la variable $return		
    		$return=preg_replace("/,$/","}",$return);
    		//je retourne le rsultat a AJAX
    		echo $return;
    	}
    	else
    	{
    		echo 'VIDE';
    	}
    Lorsque l'alerte m'informe que le retour est égal à "VIDE" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(xhr.readyState == 4 && xhr.status == 200)
    			  {
    					retour = xhr.responseText;
    					alert(retour);
    Le if n'exécute pas le code du if :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(retour == "VIDE")
    					{
    						alert("ici");
    						document.getElementById('message_ou_liste').innerHTML = 'Aucn étudiant n\'est clôturé';
    					}
    Mais va dans le else :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    else
    					{
    						emptySel(document.getElementById('et_clotured'));
    						MesOption=eval("(" + retour + ")");
     
    						for (key in MesOption) 
    						{
    							LeTexte = MesOption[key];
    							LaValeur = key;
    							var NewOption = document.createElement('option');
    							NewOption.value = LaValeur;
    							NewOption.innerHTML=LeTexte;
    							document.getElementById('et_clotured').appendChild(NewOption);
    						}
     
    					}
    J'ai vérifié, VIDE ne contient aucun espace avant ou après.

    Je ne comprends vraiment pas

    Merci d'avance pour votre aide.

    beegees

  2. #2
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    C'est en effet bizarre

    Le problème est peut-être avant ou après, montre-nous un bout de code moins "découpé" pour avoir une vision d'ensemble, disons au moins de la fonction ajax dont tu nous montres des extraits.

    ...pour les linguistes et les curieux >>> générateur de phrases aléatoires

    __________________

  3. #3
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par RomainVALERI Voir le message
    C'est en effet bizarre

    Le problème est peut-être avant ou après, montre-nous un bout de code moins "découpé" pour avoir une vision d'ensemble, disons au moins de la fonction ajax dont tu nous montres des extraits.
    Bonjour,

    J'ai trouvé la solution ce matin, j'ai oublié de vous informer

    C'était des lignes blanches qui s'étaient mises après les balies PHP.

    J'ai testé mon retour de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    						for (var i = 0; i < retour.length; i++) 
    						{
    							alert(retour[i]);
    						}*/
    Cela m'a permis de voir que j'avais 4 espaces avant le retour

    Si cela te tente, et si tu connais jquery, j'ai un autre gros problème :

    http://www.developpez.net/forums/d85...r-script-site/

    Encore merci et bonne année

    beegees

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Simple requete qui ne fonctionne pas
    Par chuspyto dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 28/03/2015, 18h24
  2. Simple redirection qui ne fonctionne pas
    Par Invité dans le forum Apache
    Réponses: 3
    Dernier message: 12/01/2012, 09h21
  3. Application qui ne fonctionne pas correctement sur W7 64 bits
    Par JeanMarc_T2k dans le forum Windows 7
    Réponses: 6
    Dernier message: 22/03/2011, 11h34
  4. [RegEx] Regex simple mais qui ne fonctionne pas comme il faut
    Par yagami77 dans le forum Langage
    Réponses: 1
    Dernier message: 08/01/2011, 23h27
  5. un simple exemple qui ne fonctionne pas! pourquoi ?
    Par clavier12AZQSWX dans le forum Flex
    Réponses: 1
    Dernier message: 17/08/2009, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo