ciao a tutti,ho un problema nella creazione di un array multidimensionale con dei dati prelevati da un database.
Devo creare degli array con i generi delle categorie presenti nel database e distinguendoli tra quelli che sono dei generi già presenti per default o generi che ho inserito IO UTENTE.. mi spiego meglio

ho una tabella categoria fatta in questo modo:
ID_Categoria
Nome_Categoria

questa tabella ha solo 3 record: Film,SerieTV e SerieAnimate

ho una tabella genere che conterrà tutti i generi
ID_Genere
Nome_Genere
User_Personalize (conterrà 0 se il genere è inserito di Default o l'id dell'utente se l'ha inserito lui)

ho una tabella Cat_Gen che mi associa i generi alle categorie in quanto un genere può anche essere presente in 2 categorie e il record non deve essere duplicato...

bene ho pensato di creare degli array con 1 sola query impostandolo in questo modo

Array['Film']['Default'][ID_GENERE][NOME_GENERE] Conterrà tutti i generi della categoria film di default
Array['Film']['Personalizzato'][ID_GENERE][NOME_GENERE] Conterrà tutti i generi della categoria film che ho creato io

stessa cosa per SerieTV e SerieAnimate

bene io avrei creato un codice in questo modo:
Codice PHP:
    for($cat=1$cat<3$cat++){    //    apertura del FOR
        
$strSQL "SELECT Genere.ID_Genere, Genere.Nome_Genere, Genere.User_Personalize
                   FROM Genere
                   INNER JOIN Cat_Gen ON Genere.ID_Genere = Cat_Gen.ID_Gen
                   INNER JOIN Categoria ON Categoria.ID_Categoria = Cat_Gen.ID_Cat
                   WHERE Categoria.ID_Categoria = 
$cat AND ((Genere.User_Personalize=$id_utente)OR(Genere.User_Personalize=0))";
        
$dbh=mysql_query($strSQL) OR die("Errore 003, contattare l'amministratore ".mysql_error()) ;
        while (
$riga mysql_fetch_array($dbh)) {
        
$ID_Genere $riga['ID_Genere'];
        
$Nome_Genere $riga['Nome_Genere'];
        
$User_Personalize $riga['User_Personalize'];
            if(
$cat==1)    
                
$categoryName='Film';
            else if(
$cat==2)    
                
$categoryName='SerieTv';
            else if(
$cat==3)    
                
$categoryName='SerieAnimate';
                
            if(
$User_Personalize==0
                
$genereType='Default';
            else if(
$User_Personalize==$id_utente)    
                
$genereType='Personalizzato';
            
                
$genereArray["$categoryName"]["$genereType"] = array( 'id' => "$ID_Genere"'nome' => "$Nome_Genere"); 
        }
    }    
//    chiusura del FOR 
però se lo vado a stampare in questo modo non funziona:
Codice PHP:
    echo 'Select Film Default';
    echo 
'<select>';
            foreach(
$genereArray["Film"]["Default"] as $value=>$text)
            {
                    echo 
'<option value="'.$value.'">'.$text.'</option>';
            }
    echo 
'</select> 
'

ma nella select visualizzo 1 solo record e in una option l'id del record e in un'altra option il nome del genere...Dove sbaglio?