Hola,
Si no es un include, lo que necesitas es una redireccion. Lo puedes hacer con header() (
www.php.net/header), siempre que no saques antes nada por el navegador. Algo asi:
Código PHP:
$URL=(array_key_exists($_GET['sec'],$secciones))?$secciones[$_GET['sec']]:'default.php';
header("Location: $URL");
exit;
En $secciones tienes un array asociativo cuyas claves son los valores que pasas por la URL para seleccionar la seccion, y los valores las URLs a donde redireccionar.
Eso si, tal como esta, no se le pasa ningun parametro ni GET ni POST a la URL redireccionada. Con los GET seria facil, simplemente añadirselos a $URL. Pero para los POST podrias intentar lo que comento en este otro mensaje:
http://www.forosdelweb.com/s/msg159122.html . Resumiendolo seria mandar una cabecera de estado distinta a la que envia con header("Location"):
Código PHP:
$URL=(array_key_exists($_GET['sec'],$secciones))?$secciones[$_GET['sec']]:'default.php';
header("HTTP/1.1 307 Temporary Redirect");
header("Location: $URL");
exit;
Eso si, tiene el problema del mensaje que sacan algunos navegadores.
Saludos.