Eseguo due query con MySQL e creo un while per visualizzare in una tabella i risultati:
Codice PHP:
<? $query_visualizza_giorno "SELECT * FROM giorni";
$visualizza_giorno mysql_query($query_visualizza_giorno$connessione) or die(mysql_error());
$query_visualizza_programmi "SELECT * FROM programmi";
$visualizza_programmi mysql_query($query_visualizza_programmi$connessione) or die(mysql_error()); ?>
Ora voglio stampare a video i risultati della prima query ($visualizza_giorno):
Codice PHP:
<? while ($row mysql_fetch_array($visualizza_giorno)) {
echo 
"Valore 1: ".$row[0];
echo 
"Valore 2: ".$row[1];
echo 
"Menu' a discesa: <select name=\"programma\">"//continua... ?>
Ecco, dove sta "Menu' a discesa" dovrei mettere un secondo while che elabori i dati della seconda query ($visualizza_programmi):
Codice PHP:
<?
while ($row2 mysql_fetch_array($visualizza_programmi)) {
if(
$row['2'] == $row2['id']) {
    echo 
"<option selected value=\"".$row2['id']."\">".$row2['descrizione']."</option>";
} else {
    echo 
"<option value=\"".$row2['id']."\">".$row2['descrizione']."</option>";
            }
         }
?>
In pratica, nella prima query ho un campo "idprogramma" che contiene l'id del programma corrispondente per quel giorno. E vorrei che quel menu' a discesa venisse ripetuto per ogni riga della prima query. L'unica differenza che si ha di volta in volta è il valore che sarà selezionato (vedi "selected")...
La cosa che non capisco è che questo mi funziona ottimamente solo al primo ciclo del primo while, dopodiché è come se tutto svanisse e gli altri menu' a discesa sono vuoti...

PER UN ESEMPIO DI COME NON RIEMPIE GLI ALTRI CAMPI VEDI CLICCA QUI!...