Allora se può esservi d'aiuto le tabelle incriminate sono:

userskill: una skill che viene associata ad un utente, compaiono
dunque all'interno della tabella i soli riferimenti alla tabella user,
skill e un campo per la specifica del livello
USERSKILL
id
id_user
id_skill
level

skill: una tabella per mettere i nomi delle skill
SKILL
id
name

Lo scopo è selezionare tutte le skills e rispettivi livelli associati ad ogni utente.


Io ho fatto vari tentativi... vi posto uno degli ultimi anche se soon sicura che scritto così è sbagliato al 100%... Cmq lo posto solo per cercare di farvi capire cosa bisogna fare...

Codice PHP:
$idskill="SELECT userskill.id_skill FROM userskill WHERE userskill.id_user=2";
$result1 = mysql_query($idskill);
echo "$idskill
";
if (!$result1) {
$message = 'Invalid query: ' . mysql_error() . "\n";
$message .= 'Whole query: ' . $idskill;
die($message);
}

while ($row = mysql_fetch_array($result1)) {
$query="SELECT userskill.id_user,userskill.level,skill.name FROM userskill INNER JOIN skill ON (userskill.id_user=2) AND (skill.id=$row[0])";
echo $query."
";
$result = mysql_query($query);
echo "$row[0]
";
}


Il risultato attualmente è questo:
SELECT userskill.id_skill FROM userskill WHERE userskill.id_user=2
SELECT userskill.id_user,userskill.level,skill.name FROM userskill INNER JOIN skill ON (userskill.id_user=2) AND (skill.id=4)
4
SELECT userskill.id_user,userskill.level,skill.name FROM userskill INNER JOIN skill ON (userskill.id_user=2) AND (skill.id=10)
10
2iduserSQLname2level
2iduserSQLname1level
Nell'ultima riga torna iduser=2 e torna level=1 in un caso e 2 nell'altro..L?unico problema è il campo NAME: dovrebbe tornare una volta SQL e l'altra dovrebbe cambiare... invece rimane sempre sql...