• User Newbie

    Menu a tendina per regione provincia e comune da mysql per php.

    Innanzitutto un grande saluto a tutti e complimenti a tutti voi che postate su questo forum.

    Mi sono affacciato da poco sul mondo del php e mysql e quindi avrei bisogno di un vostro generoso aiuto.

    Vi spiego il mio problema.

    Ho bisogno di creare il solito menù a 3 tendine con regione provincia e comune, chiaramente correlati tra loro, e vorrei inoltre che la pagina non si aggiornasse ad ogni scelta di esse.

    Ho impostato le tabelle in questo modo:

    Tabella **regioni **:
    id
    regione

    Tabella** province :**
    id
    id_regione
    provincia
    sigla (esempio TO per Torino)

    Tabella comuni:
    id
    id_regione
    id_provincia
    comune

    Aspetto con ansia le istruzioni per creare il menu a tendina.
    Grazie infinite e complimenti ancora per il forum.


  • User Attivo

    Ciao dannythedog,
    purtroppo quello che chiedi non è attuabile solo con php.
    Php funziona lato server e non può effettuare modifiche su una pagina già caricata.
    Serve javascript/ajax per cambiare le select dinamicamente.

    Prova a vedere se questo codice può fare al caso tuo:
    http: //www.napolux.com/2009/select-modulo-html-lista-regioni-province-e-comuni-italiani.html
    Ciao 😉


  • User Newbie

    Potrebbe fare al caso mio ma il problema è che non ho trovato il codice php, ovvero c'è la pagina di esempio ma non il codice php postato.

    Potete aiutarmi?:?
    Grazie ancora.


  • User

    Salve a tutti.
    Io avrei quasi lo stesso problema di dannythedog (a me bastano regione e province, ma penso che poi si possa adattare anche ai comuni) e stavo per aprire una nuova discussione quando ho visto questa già aperta.
    Anche io ho visto il link che ha indicato sopra Bazarop, ma non sono riuscito a cavarci molto, essendo anche io poco esperto.
    Girovagando per il web ho trovato un'altra soluzione che mi sembrava molto semplice da applicare, ma non riesco comunque a farla funzionare e volevo pertanto chiedere aiuto.
    Chiedo ai moderatori cosa fare: se aprire una nuova discussione o postare il codice direttamente qui in modo da lavorare su qualcosa di già avviato;
    dannythedog, vediamo se si riesce a risolvere i nostri problemi in un colpo solo!!!!


  • User Newbie

    si credo che il lavoro sia lo stesso!
    speriamo che qualcuno abbia la pazienza di aiutarci


  • User

    Tutto ciò che finora sono riuscito a tirare fuori io è questo:

    <?
    include("../connections/connessione.php");
    ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Inserimento Regione-Provincia</title>
    <link href="../style.css" rel="stylesheet" type="text/css" media="screen" />
    <script type="text/javascript" language="Javascript">
    function cambio_r(){
    location.href = "new2.php?regione="+document.form1.regione.value;
    }
    function cambio_p(){
    location.href = "new2.php?regione="+document.form1.provincia.value+"&provincia="+document.form1.select_p.value;
    }
    </script>
    </head>
    <body>
    <form action="new2_insert.php" method="post" name="form1">
    <select name="regione" onChange="cambio_r();">
    <?php
    //query regione
    $query_r = "SELECT * FROM regioni ORDER BY regione";
    $result_r = mysql_query($query_r);
    echo '<option value="">Seleziona</option>';
    while($row = mysql_fetch_assoc($result_r)){
    echo '<option value="'.$row['id'].'" >'.$row['regione'].'</option>';
    }
    $idregione = $_GET['id'];
    ?>
    </select>
    <br />
    <select name="provincia" onChange="cambio_p();">
    <?php
    //query provincia
    $query_p ="SELECT * FROM province WHERE idregione='".$idregione."'";
    echo $query_p;
    $result_p = mysql_query($query_p);
    echo '<option value="">Seleziona</option>';
    if($idregione != '') {
    while($row = mysql_fetch_assoc($result_p)) {
    echo '<option value="'.$row['id'].'" >'.$row['provincia'].'</option>';
    }}
    ?>
    </select>
    </form>
    </body>
    </html>

    In pratica vedo l'elenco delle regioni, selezionandone una si ricarica la pagina (così come gli indica il javascript) con il valore id della regione, però non appaiono le province. Dov'è che sbaglio??