Hola,
te intento resumir un poco lo que puedes hacer:
1) Descargarte el framework jquery, es un .js que incluyes en la cabecera de tu página, y te va a facilitar bastante trabajar con AJAX.
2) Como usar AJAX con jquery:
Tendrás que hacerte una función javascript que contenga este código, y que se dispare en el onclick.
$.ajax({
type: "POST",
url: "tu.php",
data: "id_pais=(el valor seleccionado del combo de paises)",
success: carga_combo(msg){
//Código que haga un .innerHtml sobre el combo;
}
});
Te resumo los parámetros:
TYPE: Será el tipo de envío de datos GET o POST.
URL: El .php al que se llamará (en tu caso tiene que ser el que haga la query para listar las provincias de un país).
DATA: Los parámetros que envías a tu .php, en tu caso creo que con un id_pais bastará. Si necesitas más parámetros, sería id_pais=x&id_capital=x&n=x.
SUCCESS: la función javascript de tu página html que tratará la información que devuelve el .php.
En tu .php puedes montar un string html con el listado de valores devueltos por la query y realizar un return de esa cadena. Luego en la página HTML en la función carga_combo que recibe el string, si este no es nulo, hacer un .innerHTML en el combo con tu string de valores.
A día de hoy, hacer una recarga de página para listar valores secundarios de combos está un poco obsoleto, a menos que tengas limitaciones a nivel de que no puedas usar javascript o algo parecido. El AJAX a nivel usuario es mucho más cómodo y te da sensación de robustez el no estar viendo recargas continuas de páginas.
Un saludo y ánimo.