per punti:
- a me servono tutti ma la query non funzionava perchè mi dava "error: subquery returns multiple rows" o qualcosa di simile (e sì, il problema generale è che a me serve estrarre più valori da ogni tabella ma sono tutti correlati)
- no, ho fatto due conti e no, meglio di no..tengo le tabelle separate..
per chiarire meglio ti faccio uno schemino delle tabelle
musicista(codice,nome,cognome....)
band(codice[musicista],nomeBand)
salaprove(nomeSala,nomeBand[band])
in band e sala sono tutte chiavi primarie perchè la stessa band (nomeBand) è formata da più musicisti (codice) e la stessa band (nomeBand) può usare più sale prova (nomesala)
sto facendo una tabella in cui ci sono un po' di dati anagrafici (ogni riga corrisponde a un musicista) e poi le celle "band" dove si stampano tutte le band di quel musicista (e questa parte funziona) e sala prove dove si stampano tutte le sala prove che ogni band di quel musicista utilizza (e questa non funziona perchè ogni sala prove è collegata alla band). ti posto il codice completo della tabella
codice:$sql="SELECT * FROM soci"; $res=mysql_query($sql,$con); if ($res==0){ echo "<br>Nessun risultato"; }else{ while($col=mysql_fetch_array($res)){ $sql1="SELECT nomeBand FROM band WHERE numTessera=$col[0]"; $res1=mysql_query($sql1,$con); echo"<tr> <td><form method='post' action='print.php'> <input type='hidden' name='numTessera' value='$col[0]'> <input type='submit' name='stampa' value='Documenti' class='butt'></input></form> </td> <td> $col[0]</td> <td> $col[1]</td> <td> $col[2]</td> <td> $col[11]</td> <td> $col[12]</td> <td> $col[14]</td> <td>"; while($col1=mysql_fetch_array($res1)){ for($i=0;$i<count($res1);$i++){ $sql2="SELECT nomeSala FROM band WHERE nomeBand=$col1[$i]"; $res2=mysql_query($sql2,$con); //echo"$col1[$i], "; echo"$sql2"; } } echo"</td> <td>"; for($n=0;$n<count($res2);$n++){ while($col2=mysql_fetch_array($res2[$n])){ for($i=0;$i<count($col2);$i++) echo"$col2[$i], "; } } echo"</td> "; } }
ciao e grazie
L.

Rispondi quotando