Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    query regioni >provincie > comuni

    ho una tabella mysql con circa 16.000 record, dove nella prima colonna ho le Regioni, nella seconda ho le Provincie e nella terza colonna i nomi dei Comuni.


    volevo fare in modo che l' utente arivasse alla scelta del Comune tramite 3 select, dove nel primo sceglie la Regione.
    Nel secondo select sceglierà la Provincia da una lista ricavata in base alla Regione scelta.
    infine nel terzo select sceglierà il Comune in base ai risultati ottenuti per quella Provincia.

    il problema è che non so da dove iniziare :-(
    sono partito da questo script che però mi restituisce tutte le provincie per tutti i comuni, mi servirebbe invece qualcosa che restituisca solo una volta la stessa provincia trovata:

    codice:
    <?php
    include 'config.php';
    	$conn = mysql_connect ("$db_host", "$db_login", "$db_pass") or die ("Nessuna conessione");
    	mysql_select_db ("$nome_db", $conn);
    	$sql_select_provincia = "SELECT provincia FROM tempi_resa_italia WHERE (regione = 'lombardia')";
    	$query_select = mysql_query ($sql_select_provincia, $conn) or die ("Non riesco ad eseguire le query $sql_select");
    	mysql_close($conn);
    	if (mysql_num_rows ($query_select) > 0)
    		{
    		echo "<table>\n";
    
    		while ($valori  = mysql_fetch_array ($query_select))
    			{
    			$provincia_db = $valori ["provincia"];
    			
    			echo "<tr><td>";
    					echo $provincia_db;
    			echo "</td></tr>";
    
    			}
    		echo "</table>\n";
    		}
    ?>
    potete darmi una mano?

  2. #2
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896
    non capisco... se tu metti regione = 'lombardia'
    esce (ad esempio) milano più di una volta o escono province che non sono della lombardia ?

  3. #3
    con quella query utilizzando la Regione "Lombardia" esce questo:
    BG -> 317 volte
    BS -> 338 volte
    CO -> 223 volte
    CR -> 157 volte
    LC -> 115 volte
    LO -> 70 volte
    MN -> 164 volte
    MI -> 340 volte
    PV -> 216 volte
    SO -> 138 volte
    VA -> 187 volte


    i dati che mi servono invece sono questi (che poi andrò ad inserire nel tag select):
    BG -> 1 volte
    BS -> 1 volte
    CO -> 1 volte
    CR -> 1 volte
    LC -> 1 volte
    LO -> 1 volte
    MN -> 1 volte
    MI -> 1 volte
    PV -> 1 volte
    SO -> 1 volte
    VA -> 1 volte

  4. #4
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896
    naturalmente BG è inserito 1 volta solo nella tabella... vero?!?

    cmq prova con un GROUP BY

    SELECT id_record , provincia FROM tempi_resa_italia WHERE regione = 'lombardia' , GROUP BY id_record


    con quella query utilizzando la Regione "Lombardia" esce questo:
    BG -> 317 volte
    BS -> 338 volte
    CO -> 223 volte
    CR -> 157 volte
    LC -> 115 volte
    LO -> 70 volte
    MN -> 164 volte
    MI -> 340 volte
    PV -> 216 volte
    SO -> 138 volte
    VA -> 187 volte
    però è molto strano....

  5. #5
    no, forse non mi sono spiegato bene :-)

    la tabella ha circa 16000 record di comuni italiani ogni comune ha il proprio id, reggione, provincia e naturalmente il nome del comune stesso.

    dato che nella tabella ci sono 317 comuni appartenenti alla provincia di Bergamo è ovvio che tale provincia apparirà 317 volte con la quesry che ho eseguito prima.

    comunque ci sono riuscito , ho seguito le tue indicazioni così:
    codice:
    $sql_select_provincia = "SELECT provincia FROM tempi_resa_italia WHERE (regione = 'lombardia') GROUP BY provincia";
    adesso ottengo quindi questo:

    BG -> 1 volte
    BS -> 1 volte
    CO -> 1 volte
    CR -> 1 volte
    LC -> 1 volte
    LO -> 1 volte
    MN -> 1 volte
    MI -> 1 volte
    PV -> 1 volte
    SO -> 1 volte
    VA -> 1 volte


    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.