Salve,
Complimenti innanzitutto per la bella community e per il sito ricchissimo di contenuti (dai quali attingo di frequente).
Espongo qui il mio problema cercando di essere il più chiaro possibile.
Ho due tabelle "macchine" e "concessionarie" così strutturate:
Tab Macchine
Tab Concessionarie
Nella colonna con_macchine, tramite form, inserisco come array gli id delle corrispondenti auto.
Ora vorrei riuscire ad ottenere una pagina in cui si visualizzano le seguenti informazioni:
Nome concessionaria - Macchine
Fiat - Panda, Punto
Ford - Fiesta
Renault - Twingo
Per estrarre il nome della concessionaria non ho problemi, ma non so come estrarre il nome delle macchine da id.
Ho provato in questo modo:
Lo so, il codice è un pò confuso ma dopo vari tentativi, almeno con questo sono riuscito a fare un piccolo passo avanti. Solo che per ogni concessionaria, il codice restituisce solo il primo elemento dell'array, quindi ad esempio per fiat ottengo solo "panda" e non "panda,punto".
Avete suggerimenti?
Complimenti innanzitutto per la bella community e per il sito ricchissimo di contenuti (dai quali attingo di frequente).
Espongo qui il mio problema cercando di essere il più chiaro possibile.
Ho due tabelle "macchine" e "concessionarie" così strutturate:
Tab Macchine
Codice:
|id_macchina|nome_macchina| ecc ecc
| 1 | fiesta | ecc ecc
| 2 | panda |
| 3 | punto |
| 4 | twingo |
| ecc | ecc |
Tab Concessionarie
Nella colonna con_macchine, tramite form, inserisco come array gli id delle corrispondenti auto.
Codice:
|con_id|con_nome|con_macchine| ecc ecc
| 1 | Fiat | 2,3 | ecc ecc
| 2 | Ford | 1 |
| 3 |Renault | 4 |
| ecc | ecc | ecc |
Ora vorrei riuscire ad ottenere una pagina in cui si visualizzano le seguenti informazioni:
Nome concessionaria - Macchine
Fiat - Panda, Punto
Ford - Fiesta
Renault - Twingo
Per estrarre il nome della concessionaria non ho problemi, ma non so come estrarre il nome delle macchine da id.
Ho provato in questo modo:
PHP:
$concessionarie_sql = $data->query("SELECT * FROM concessionarie ORDER BY con_nome ASC");
while($concessionarie_obj = $data->estrai($concessionarie_sql)){
//Estraggo i dati relativi alle concessionarie
$con_id[] = $concessionarie_obj->con_id;
$con_nome[] = $concessionarie_obj->con_nome;
ecc ecc
//Ora provo ad estrarre gli id delle macchine e a trasformarli in nomi.
$con_macchine[] = $concessionarie_obj->con_macchine;
$con_macchine[] = explode(',',$con_macchine);
$auto = array();
foreach ($con_macchine AS $macchina) {
$macchine_sql = $data->query("SELECT nome_macchine FROM macchine WHERE id_macchina = '$macchina'");
while($macchine_obj = $data->estrai($macchine_sql)){
$auto[] = stripslashes($macchine_obj->nome_macchina)." ";
}
}
}
Lo so, il codice è un pò confuso ma dopo vari tentativi, almeno con questo sono riuscito a fare un piccolo passo avanti. Solo che per ogni concessionaria, il codice restituisce solo il primo elemento dell'array, quindi ad esempio per fiat ottengo solo "panda" e non "panda,punto".
Avete suggerimenti?