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] Ajax : faire "le tri" dans une réponse


Sujet :

AJAX

  1. #1
    Membre actif
    Homme Profil pro
    Webmaster - Développeur/intégrateur web
    Inscrit en
    Septembre 2011
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Webmaster - Développeur/intégrateur web
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2011
    Messages : 210
    Points : 246
    Points
    246
    Par défaut [AJAX] Ajax : faire "le tri" dans une réponse
    bonsoir à tous !

    D'abord pardonnez moi si je ne me suis pas présentez
    je susi inscrit depuis quelque temps et je ne me rappel
    pas avoir posté de presentation.

    Je Mickael, jeune web master autodidacte en herbe,
    même si j'ai pour habitude d'utiliser des CMS pour
    "faire" mes sites dynamiques, ma créativités sans limite
    m’oblige souvent à "mettre les main dans le code".

    Bien voici mon problème d'Ajax :
    En fait j'ai réalisé un formulaire de soumission de lieu.

    1ere étape : l'utilisateur sélectionne la catégorie du lieu (exemple : église, salle des fêtes...)
    selon la réponse le script interroge la BDD par le biais de la page PHP qui renvoi la
    réponse qui est ensuite insérée dans le sélecteur "pays" par le biais de getElem...innerHTML.

    Jusqu'à là tout va bien, la liste des pays en fonction de la catégorie apparait bien dans le sélecteur "pays".

    2eme étape : l'utilisateur sélectionne le pays pour afficher la liste des départements, et c'est là que ça coince car la liste des départements s'affiche bien, mais la liste des pays se tape l'incrust' dans le sélecteur... logique !!!

    J'ai bien essayé tout un tas de structure conditionnelles mais rien y fait...
    là je suis vraiment paumé... comment faire en sorte de "trier" les données réceptionnées ???

    Faut il le faire au niveau de mon script JS ou au niveau de ma page PHP ?

    Je précise que j’utilise la méthode GET.
    Voici d'abord le code Javascript, si besoin je peu vous donner l’ensemble du code HTML et ou le code PHP de la page interrogée.

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     
    <script type="text/javascript">
     
     
    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;
    }
     
     
    // 1. Mise en place du script Ajax (instance de l'objet xhr et suivie de la requete)
     
     
    function request(callback) { 
    	var xhr = getXMLHttpRequest(); 
     
    	xhr.onreadystatechange = function() {
    		if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { 
    			callback(xhr.responseText);										 
    		}
    	};
     
    // 2. Définition des Variables 
    --> on recupere la valeur de la selection par le biais de document.getElementById, (Id = id du sélecteur)
    	var $catego = encodeURIComponent(document.getElementById("filtrecatego").value); 
    	var $pay = encodeURIComponent(document.getElementById("filtrepay").value);
    	var $departement = encodeURIComponent(document.getElementById("filtredepartement").value); 
    	var $ville = encodeURIComponent(document.getElementById("filtreville").value);
     
    // 3. Requete au pres de "reponse_ajax.php" par le biais de GET (
    	xhr.open("GET", "rep_gmafp_ajax.php?catego=" + $catego + "&pay=" + $pay + "&departement=" + $departement + "&ville=" + $ville, true);
     
    	xhr.send(null);
    }
     
    // Option 1 : requete par le biais de "Categorie"
     
    function read_from_catego(readpay) { // fonction activée par la selection d'une catégorie
     
    	document.getElementById("filtrepay").innerHTML = readpay;
    	// on insere la valeur HTML de la réponse dans l'ID par le biais de innerHTML.
    }	
     
     
    function read_from_pay(readdep) { // fonction activée par la selection d'une catégorie
     
    	document.getElementById("filtredepartement").innerHTML = readdep;
    	// on insere la valeur HTML de la réponse dans l'ID par le biais de innerHTML.
    }
     
    </script>
    Merci d'avance pour votre aide !!

  2. #2
    Inactif  

    Homme Profil pro
    développeur Vala
    Inscrit en
    Février 2011
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : développeur Vala
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 478
    Points : 3 700
    Points
    3 700
    Par défaut
    bonsoir .
    pourrais tu poster le contenu de ta page php ?
    comme cela, on pourrait voir ce qui est reçu lors de la requête

  3. #3
    Membre actif
    Homme Profil pro
    Webmaster - Développeur/intégrateur web
    Inscrit en
    Septembre 2011
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Webmaster - Développeur/intégrateur web
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2011
    Messages : 210
    Points : 246
    Points
    246
    Par défaut résolue
    bonjour rotrevrep,

    merci pour ta réponse, en fait j'ai peu résoudre le problème
    en me basant sur
    ce tutoriel.

    En fait grâce à ça j'ai pu créer différentes fonctions qui s’exécute
    en fonction du changement d'état d'un sélecteur en particulier,
    de cette manière chaque requete envoi sa propre variable,
    au final je reçois uniquement le résultat demandé...

    J'ai donc remplacé le script JS de départ par ce script et ça fonctionne nickel !

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

Discussions similaires

  1. [AC-2007] Faire un tri dans une requete et mettre un 0
    Par petchy dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 07/03/2010, 17h57
  2. Faire un tri dans une liste
    Par patmar83 dans le forum IHM
    Réponses: 5
    Dernier message: 17/12/2009, 08h37
  3. Réponses: 4
    Dernier message: 06/05/2009, 16h55
  4. Faire un tri dans une DataTable
    Par zooffy dans le forum ASP.NET
    Réponses: 16
    Dernier message: 18/03/2009, 00h46
  5. [PB 10.5] Faire un tri dans une datawindow
    Par lanageuse59 dans le forum Powerbuilder
    Réponses: 3
    Dernier message: 12/03/2009, 17h03

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