Bonsoir,

Je travaille sur une application web où l'utilisateur coche des cases à cocher (filtres) selon ce qu'il veut rechercher. Une fois la recherche effectuée, les résultats sont représentés sur une carte géographique (chaque résultat est géo-référencé). Ce que je veux c'est que la page ne se charge pas, et à qu'à chaque fois qu'il modifie les filtres et qu'il clique sur le bouton, les résultats s'affichent immédiatement sur la carte sans le rechargement de la page. Je ne sais pas où est-ce que j'ai commis l'erreur, mais en tout cas, ça marche sans AJAX.

Un point important, c'est qu'une fois l'utilisateur clique sur le bouton "Envoyer", un fichier JSON est généré. Je lis les résultats à partir de ce fichier pour les représenter sur la carte.

J'ai ces fichiers :

index.php : La page (HTML) + inclusion de 2 pages PHP (traitement.php : fait le traitement des filtres choisis et génère une requête SQL (un select au fait) / res.php : prend cette requête et l'exécute puis écrit le fichier JSON).

Voici le fichier JavaScript :

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
 
$(document).ready(function(){
 
 
    $('#send').click(function(e){
    e.preventDefault();
    $('#carte').remove();
    $('<div id="carte" class="-col8" style="height: 700px;" ></div>').appendTo('#layout');
 
    $.getJSON('test.json',function(data){
 
      // TRAITEMENT DU FICHIER RETOURNE (data) / ça fonctionne bien
 
    });
 
});
 
});
Les fichiers res.php et traitement.php fonctionnent à merveille. Le seul souci est que j'aimerais, à partir de jQuery/JS déclencher l'exécution des deux fichiers PHP traitement.php puis res.php, mais je n'y arrive pas.

Merci de m'aider.