Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/01/2010, 04:47
miwelillo
 
Fecha de Ingreso: junio-2008
Mensajes: 175
Antigüedad: 15 años, 9 meses
Puntos: 11
Fallo rarisimo con un query anidado

Estoy intentando hacer un select menu que obtenga las diferentes opciones dinamicamente a partir de la BDD pero me pasa una cosa rarisima.
Tengo una tabla PERSONA con 2 campos: REGION (tipo smallint) y AREA (varchar), primero quiero imprimir la REGION y debajo de esta las AREAS que hay dentro de cada REGION (un poco tabuladas, al igual que el select que hay en este mismo foro en la esquina inferior derecha)

El codigo que tengo es el siguiente:

Código PHP:
include_once("conexion.php");
    
$result mysql_query("SELECT REGION FROM PERSONA GROUP BY REGION ORDER BY REGION ASC");
    while(
$fila mysql_fetch_array($result)){
        
$regionID $fila["REGION"];
        switch (
$regionID){
            case 
0:
                
$region "Anywhere";
                break;
            case 
1:
                
$region "London";
                break;
            case 
2:
                
$region "South England";
                break;
            case 
3:
                
$region "South East England";
                break;
            case 
4:
                
$region "South West England";
                break;
            case 
5:
                
$region "Wales";
                break;
            case 
6:
                
$region "Yorkshire";
                break;
            case 
7:
                
$region "East England";
                break;    
            case 
8:
                
$region "West Midlands";
                break;
            case 
9:
                
$region "East Midlands";
                break;            
            case 
10:
                
$region "Humberside";
                break;
            case 
11:
                
$region "Cumbria";
                break;
            case 
12:
                
$region "North East England";
                break;
            case 
13:
                
$region "North West England";
                break;
            case 
14:
                
$region "Northern Ireland";
                break;
            case 
15:
                
$region "Scotland";
                break;
            default:
                break;
        }
    
                echo 
"<option class=\"menutitle\">".$region."</option>";
                
//$result2 = $mysql_query("SELECT AREA FROM PERSONA WHERE REGION = $regionID GROUP BY AREA ORDER BY AREA ASC");
                /*while($fila2=mysql_fetch_array($result2)){
                    /*if($fila2["AREA"]=="" || $fila2["AREA"]==" "){
                        $fila2=mysql_fetch_array($result2);
                    }*/
                /*    echo "<option class=\"listamenu\">&nbsp;&nbsp;&nbsp;".$fila2["AREA"]."</option>";
                }*/
    
    

Pues bien, funciona todo perfectamente hasta el segundo query, si descomento el segundo query ($result2 = mysql_query(...)) deja de funcionar todo.

He comprobado que el query sea correcto y me devuelve los resultados perfectamente por lo que no entiendo como es posible que, una vez ejecutado el primer query, al ejecutar el segundo deje de funcionar todo. ¿Alguna idea?

Gracias de antemano y un saludo!

Última edición por miwelillo; 17/01/2010 a las 11:03