Hice exactamente eso que comentas (o eso es lo que yo creo), mediante JQuery con un codigo parecido a este para cada boton:
Código:
$('#btnAgenda').click(function(){
$('#includes').load('agenda.php');
});
"btnAgenda" es el boton del menu (hay una de esas funciones para cada boton), "includes" es el div donde se cargan los distintos includes y "agenda.php" es el archivo que se tiene que cargar (que obviamente, varia segun el boton).
El problema es que cuando hago esas cargas y alguna variable se actualizo en los includes, al hacer el cambio se pierde el nuevo valor y por poner un ejemplo, si hacia algo de la forma $_SESSION['logueado'] = TRUE, en el proximo cambio sigue siendo FALSE y la sesion se cierra.