Pour lancer une requète MySQL sans changer de page ou la recharger, il faut utiliser AJAX.
1. Au centre du dispositif, l'objet XMLHttpRequest
Code pour créer l'objet :
2.Exemple de fonction asynchrone :
tri d'une liste en cliquant sur les en-tête de colonne
3. Reste à écrire la page PHP (affiche_liste.php) appelée par la fonction javascript asynchrone
le choix d'un département charge une liste déroulante avec toutes les communes de ce département sans recharger la page.
Tutorial détaillé sur le site.