problema con estrazione dati da più tabelle

mediasteno

Utente Attivo
25 Gen 2010
120
0
0
Ho due tabelle, una con tutti i comuni di Italia ed una con tutti i monumenti da visitare di ogni comune di Italia. Le due tabelle sono collegate con comuni.id = monumenti.id_comune. Ciò che io devo fare è quello di stampare il nome del comune, descrizione del comune, ed elenco dei monumenti da visitare.
Ad esempio
Roma
E' la capitale di Italia, città situata nella regione lazio ecc. ecc.

Da visitare:
- colosseo
- fontana di Trevi
- pantheon
- catacombe

I primi due campi nome_comune e descrizione_comune sono nella tabella comuni, mentre il campo nome_monumento è nella tabella monumenti.
Ho creato una LEFT JOIN delle due tabelle in questo modo:

$sql_comune = "SELECT comuni.*, monumenti.* FROM comuni LEFT JOIN monumenti ON comuni.id = monumenti.id_comune WHERE comuni.id="$comune";
$result = mysql_query("$sql_comune",$link) or die ("errore nel database!");
while ($riga = mysql_fetch_array($result) )
{
$comune_nome = stripslashes($riga['comune']);
$comune_descrizione = stripslashes($riga['descrizione']);
$monumento = stripslashes($riga['monumento']);

echo "<h2>".$comune_nome."</h2><p>".$comune_descrizione."</p><ul><li>$monumento</li></ul>";
}

Il mio problema è che impostando in questo modo ho che il nome del comune e la descrizione vengono stampate un tot di volte corrispondente al numero dei monumenti estratti dalla tabella monumenti. Come posso fare ad ottenere che il tutto venga stampato una sola volta?
Sono alle prime armi con il linguaggio mysql e penso che sia un problema di impostazione di cicli, ma non so dove modificare! Tra l'altro devo unire non solo queste due tabelle ma più tabelle ho semplificato la questione a due tabelle perchè credo che il meccanismo sia lo stesso sia che si tratti di due tabelle e sia che siano più di due.
Ringrazio anticipatamente per l'aiuto
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova in questo modo perchè non sò se la join supporti il raggruppamento (al massimo verifica)

PHP:
<?php
//.....
$sql_c="SELECT * FROM comuni GROUP BY comuni ORDER BY comuni";
$res_c=mysql_query($sql_c);
while($riga_c=mysql_fetch_array($res_c)){
	$id_c=$riga_c['id_comune'];
	echo "comune di ".stripslashes($riga_c['comune'])." ".stripslashes($riga_c['descrizione'])."<br>";
	$sql_m="SELECT * FROM monumenti WHERE id_comune=$id_c";
	$res_m=mysql_query($sql_m);
	while($riga_m=mysql_fetch_array($res_m)){
		//e qui stampi i nomi dei mounumenti
		echo "......".stripslashes($riga_m['munumento'])."<br>";
	}
}
//.....
?>
dovrebbe stamparti es.
VENEZIA sua descrizionre
......ponte dei sospiri
......fegato alla veneziana

ROMA sua descrizione
......Colosseo
......Panteon
......Castel sant'angelo

comunque ti conviene poi vistualizzare i dati in una tabella
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Problema con estrazione coordinate da google geocoding PHP 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
N Problema con position absolute e overflow HTML e CSS 4
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
K [PHP] Problema con variabili concatenate. PHP 1
O problema con query PHP 4
I problema con 2 account Posta Elettronica 1
L problema collegamento file css con html HTML e CSS 1
E Problema accesso a file con app sviluppata con MIT APP INVENTOR 2 Sviluppo app per Android 0
M Problema con Try Catch PHP 0
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
R problema con else PHP 0
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
G Problema con Get page PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 0
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
G Problema con eccessiva nitidezza apertura Camera Raw Photoshop 0
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
T problema con select dinamica con jquery Javascript 0
S Problema con spazi bianchi HTML e CSS 5
A PROBLEMA: insert mysqli con dati Tagsinput Presentati al Forum 0
Tommy03 Problema con z-index HTML e CSS 3
M Problema inserimento parole con apostrofo nel db PHP 5
C Problema con dati meteo xml XML 1
S Problema con infrarossi videocamera IP Cam e Videosorveglianza 1
V Problema con librerie allegro5 c++ C/C++ 1
M Problema con php per calcolo costo percentuale PHP 7
S Problema con mysqli_num_rows PHP 18

Discussioni simili