No se si se me ha quedado claro.
Tienes en la base de datos consultas sql que quieres que se seleccionen en un select y ejecutarlas no?
Si es asi,
lo que puedes hacer es:
añadir es que tienes dentro de un <form> y que el action sea otra pagina (por ejemplo:procesarconsulta.php)
Código:
<form action="procesarconsulta.php" method="POST">
<select ......>
</select>
<input type="submit" name="submit" value="ejecutar Consulta">
</form>
procesarconsulta.php
Código PHP:
<?Php
$servidor = "localhost";
$usuario_bd = "root";
$password_bd = "";
$basedatos = "empresa";
$conexion = mysql_connect($servidor,$usuario_bd,$password_bd);
if (!$conexion)
{
echo "Error conectando a la base de datos.";
exit();
}
$resultado=mysql_select_db($basedatos,$conexion);
if (!$resultado)
{
echo "Error seleccionando la base de datos.";
exit();
}
$consulta=$_POST['sel_vend']; //que es el nombre que le has dado al select
$resultado_consulta=mysql_query($consulta); //ejecutamos la consulta
$datos=""; //variable donde se guardaran los datos
while($fila=mysql_fetch_array($resultado_consulta)){
/* aqui procesas los datos
si los quieres ver en el excel te recomiendo montar los datos en un csv (valores separados por comas) que el excel los lee bien
el formato debe ser:
aaaaaaaa;vbbbbbbbbbbbbb;ccccccccc;ffffffffff
eeeeee;1111111111;ffffffffffff;ggggggggggg
los valores separados por puntos y comas y por cada linea un salto de linea.
*/
}
/* una vez montados los datos los escribes en un fichero
y la extension del archivo .csv asi sin hacer nada te la abre el excel. */
$fp=fopen("archivo.csv","w"); //abrimos el archivo en modo escritura;
fwrite($fp, $datos); //escribimos los datos
fclose($fp); // cerramos el fichero
?>
espero que te sirva.