Un saluto a tutti, sono nuovamente qui per chiedere l'ennesimo aiuto.
Avrei bisogno di qualcuno che mi faccia vedere come si le inner join tra 12 tabelle per poi selezionare i loro record.
costruisci la query facendo la join sulle colonne comuni delle tabelle
quando l'hai ben provata e sei sicuro del risultato,
ti suggerisco di creare una "view" nel db in modo da gestire l'insieme come un'unica tabella (penso che mysql supporti le view...)
puoi vedere degli esempi nel link https://www.w3schools.com/sql/sql_view.asp
Un grazie per l'aiuto....mi correggo sul numero delle tabelle che non sono 12 ma 8
posto la select che ho scritto ma ancora non l'ho provata, sarà giusta?
PHP:
$id_cliente = $_SESSION['id_cliente'];
$result = $mysqli->query("SELECT * FROM anagrafica AS a
LEFT JOIN stato_salute AS ss ON ss.cliente_id = a.$id_cliente
LEFT JOIN abitudini_alimentari AS aa ON aa.cliente_id = a.$id_cliente
LEFT JOIN attivita_fisica AS af ON af.cliente_id = a.$id_cliente
LEFT JOIN piani_alimentari_assegnati AS pa ON pa.cliente_id = a.$id_cliente
LEFT JOIN stile_vita_dieta AS sv ON sv.cliente_id = a.$id_cliente
LEFT JOIN integratori_assegnati AS ia ON ia.cliente_id = a.$id_cliente
LEFT JOIN carrello_spesa AS cs ON cs.cliente_id = a.$id_cliente
");
$mysqli->set_charset("utf8");
while($row = $result->fetch_assoc()){
echo $row."<br>";
}
Riguardo le view non ne ero a conoscenza, darò uno sguardo ai due link e ti farò sapere se riuscirò nell'impresa...
Fai un mapping dei dati all'interno di un array per effettuare l'iterazione in automatico.
In array_mappa_dati inserisci i campi che vuoi che vengano stampati....
Andava tutto bene peccato solo che sono molti dati da mostrare e graficamente è un casino anche perchè ovviamente estrae tutti gli id numerici delle tabelle.
torno al metodo manuale ossia mi valorizzo le variabili una ad una e poi le impagino in più tabelle separate.