• User Attivo

    vi faccio vedere cosa dovrei fare.
    Provate a compilare questo form:
    tecnocasa.it/commerciale/txtsearch/searchi.jsp?conf=ra&orig=SitoTecnocasa


  • Consiglio Direttivo

    vedo che già funziona........non è ben chiaro allora che vorresti fare :mmm:

    Se come dice ciccio6630 vuoi che ti si faccia senza l'aggiornamento pagina allora devi ricorrere al Js o ajax 😉


  • User Attivo

    quello non l'ho fatto io.
    Ne devo realizzare uno uguale e mi serve una mano....


  • Consiglio Direttivo

    bene....le query da fare sono quelle...
    dove hai dubbi?


  • User Attivo

    come fargliele eseguire ogni volta che cambio regione....


  • Consiglio Direttivo

    In PHP non puoi far altro che mettere un bel tasto submit dato che è un linguaggio lato server
    In Js (ovvero com'è fatto in quel sito da te linkato)

    [php]<select onchange="document.nome_form.submit()" name="region">[/php]
    ricarica la pagina alla selezione di una nuova regione e ti raccogli i dati postati per rieseguire le query


  • User Attivo

    @Samyorn said:

    ricarica la pagina alla selezione di una nuova regione e ti raccogli i dati postati per rieseguire le query

    ecco....proprio questo non so fare.....:bho:


  • Consiglio Direttivo

    Ah, ecco 😄
    Allora prova così, dovrebbe andare 😉
    [php]<?
    $id_regione="";
    $id_provincia="";
    $id_comune="";

    $id_regione=$_POST['regione'];
    $id_provincia=$_POST['provincia'];
    $id_comune=$_POST['comune'];
    ?>

    <form action="page.php" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?
    $sql_regione="SELECT * FROM regione ORDER BY descrizione";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($array=mysql_fetch_array($query_regione))
    {
    ?>
    <option value="<? echo $array['id']; ?>"<? if ($id_regione==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>

    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?
    $sql_provincia="SELECT * FROM provincia";
    if ($id_regione!="")
    {
        $sql_provincia.=" WHERE id_regione='$id_regione'";
    }
    $sql_provincia.=" ORDER BY descrizione";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($array=mysql_fetch_array($query_provincia))
    {
    ?>
        <option value="<? echo $array['id']; ?>"<? if ($id_provincia==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>
    
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?
    $sql_comuni="SELECT * FROM comuni";
    if ($id_provincia!="")
    {
        $sql_comuni.=" WHERE id_provincia='$id_regione'";
    }
    $sql_comuni.=" ORDER BY descrizione";
    $query_comunia=@mysql_query($sql_comuni) or die (mysql_error());
    while ($array=mysql_fetch_array($query_comunia))
    {
    ?>
        <option value="<? echo $array['id']; ?>"<? if ($id_comune==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>
    

    </form>[/php]


  • User Attivo

    ehi grazie tante per il codice.
    l'ho provato ma non va....
    Cioè le select si riempiono ma sono bianche.....
    non si vede il contenuto!!!
    e in più pur non scegliendo la regione, sia comune che provincia sono piene.... :s


  • Consiglio Direttivo

    Io ho messo dei nomi campo a caso, devi sistemarli per come hai impostato tu il Db
    L'ho testato e funziona, devi solo cambiare questa riga, ho dimenticato di cambiare la variabile...ma comunque mi funziona 😉
    [php]$sql_comuni.=" WHERE id_provincia='$id_provincia'";[/php]EDIT:
    si, tira fuori cmq i dati, cambiala così:

    [php]<?
    $id_regione="";
    $id_provincia="";
    $id_comune="";

    $id_regione=$_POST['regione'];
    $id_provincia=$_POST['provincia'];
    $id_comune=$_POST['comune'];
    include "config.inc.php";
    ?>

    <form action="index.php" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?
    $sql_regione="SELECT * FROM regione ORDER BY descrizione";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($array=mysql_fetch_array($query_regione))
    {
    ?>
    <option value="<? echo $array['id']; ?>"<? if ($id_regione==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>

    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?
    $sql_provincia="SELECT * FROM provincia WHERE id_regione='$id_regione' ORDER BY descrizione";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($array=mysql_fetch_array($query_provincia))
    {
    ?>
        <option value="<? echo $array['id']; ?>"<? if ($id_provincia==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>
    
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?
    $sql_comuni="SELECT * FROM comuni  WHERE id_provincia='$id_provincia' ORDER BY descrizione";
    $query_comunia=@mysql_query($sql_comuni) or die (mysql_error());
    while ($array=mysql_fetch_array($query_comunia))
    {
    ?>
        <option value="<? echo $array['id']; ?>"<? if ($id_comune==$array['id']) {echo " selected";} ?>><? echo $array['descrizione']; ?></option>
    <?
    }
    ?>
    </select>
    

    </form>[/php]


  • User Attivo

    si ho già adattato alle mie esigenze....ma non funziona lo stesso....
    posto?


  • Consiglio Direttivo

    Ho editato prova in quel modo 😉

    se non funziona nemmeno così posta la pagina e la struttura delle tabelle 😉


  • User Attivo

    ecco la pagina compro.php

    [PHP]<?php
    $id_regione="";
    $id_provincia="";
    $id_comune="";

    $id_regione=$_POST['regione'];
    $id_provincia=$_POST['provincia'];
    $id_comune=$_POST['comune'];
    ?>

    <form action="compro.php" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?php
    $sql_regione="SELECT nome,codice FROM regioni ORDER BY nome";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($rigaR=mysql_fetch_array($query_regione)){
    $regione=$rigaR['nome'];
    $idRegione=$rigaR['codice'];
    echo "<option value='$idRegione'";
    if ($id_regione==$idRegione)
    echo " selected";
    echo $regione ."</option>";
    }
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Provincia: </td>
    <td>
    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?php
    if(isset($id_regione)){
    $sql_provincia="SELECT * FROM province WHERE codice_regione='$id_regione' ORDER BY nome";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($rigaP=mysql_fetch_array($query_provincia)){
    $provincia=$rigaP['nome'];
    $idProvincia=$rigaP['codice'];
    echo "<option value='$idProvincia'";
    if ($id_provincia==$idProvincia) {echo " selected";}
    echo $provincia."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Comune: </td>
    <td>
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?php
    if(isset($id_provincia)){
    $sql_comuni="SELECT * FROM comuni WHERE codice_provincia='$id_provincia' ORDER BY nome";
    $query_comuni=@mysql_query($sql_comuni) or die (mysql_error());
    while ($rigaC=mysql_fetch_array($query_comuni)){
    $comune=$rigaC['nome'];
    $idComune=$rigaC['codice'];
    echo "<option value='$idComune'";
    if ($id_comune==$idComune) {echo " selected";}
    echo $comune."</option>";
    }}
    ?>
    </select></td>
    </tr>
    </form>[/PHP]

    Tabelle:
    COMUNI
    id
    codice_provincia
    codice
    nome

    PROVINCE
    id
    codice_regione
    codice
    nome

    REGIONI
    id
    codice
    nome


  • Consiglio Direttivo

    ti eri dimenticato di chiudere i tag delle <option**>

    **[PHP]<?php
    $id_regione="";
    $id_provincia="";
    $id_comune="";

    $id_regione=$_POST['regione'];
    $id_provincia=$_POST['provincia'];
    $id_comune=$_POST['comune'];
    ?>

    <form action="index.php" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?php
    $sql_regione="SELECT nome,codice FROM regioni ORDER BY nome";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($rigaR=mysql_fetch_array($query_regione)){
    $regione=$rigaR['nome'];
    $idRegione=$rigaR['codice'];
    echo "<option value='$idRegione'";
    if ($id_regione==$idRegione)
    echo " selected";
    echo ">".$regione ."</option>";
    }
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Provincia: </td>
    <td>
    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?php
    if(isset($id_regione)){
    $sql_provincia="SELECT * FROM province WHERE codice_regione='$id_regione' ORDER BY nome";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($rigaP=mysql_fetch_array($query_provincia)){
    $provincia=$rigaP['nome'];
    $idProvincia=$rigaP['codice'];
    echo "<option value='$idProvincia'";
    if ($id_provincia==$idProvincia) {echo " selected";}
    echo ">".$provincia."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Comune: </td>
    <td>
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?php
    if(isset($id_provincia)){
    $sql_comuni="SELECT * FROM comuni WHERE codice_provincia='$id_provincia' ORDER BY nome";
    $query_comuni=@mysql_query($sql_comuni) or die (mysql_error());
    while ($rigaC=mysql_fetch_array($query_comuni)){
    $comune=$rigaC['nome'];
    $idComune=$rigaC['codice'];
    echo "<option value='$idComune'";
    if ($id_comune==$idComune) {echo " selected";}
    echo ">".$comune."</option>";
    }}
    ?>
    </select></td>
    </tr>
    </form>[/PHP]


  • User Attivo

    grazie!!!
    un genio!!


  • User Attivo

    ciao :sbav:
    allora
    in questo script ci sono tre select

    ex

    lombardia milano rho O
    puglia foggia vieste

    nel mio script eseguo la ricerca in rappresentanti e il risultato sarebbe ex

    1 Giorgio O
    2 Gianni

    MA SE IO VOLESSI OLTRE ALLA RICERCA CE NEL RISULTATO MI COMPARISSE .... ex

    lombardia milano rho 1 Giorgio O

    puglia foggia vieste 2 Gianni

    cosa devo fare...............

    <?php
    require('config.php');
    ?>
    <?php
    $id_regioni="";
    $id_provincie="";
    $id_comuni="";
    $id_regioni=$_POST['regione'];
    $id_provincie=$_POST['provincia'];
    $id_comuni=$_POST['comune'];
    ?>
    <form action="<?php $_SERVER["PHP_SELF"]?>" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?php
    $sql_regione="SELECT * FROM regioni ORDER BY nome";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($rigaR=mysql_fetch_array($query_regione)){
    $regione=$rigaR['nome'];
    $idRegione=$rigaR['id_regioni'];
    echo "<option value='$idRegione'";
    if ($id_regioni==$idRegione)
    echo " selected";
    echo ">".$regione ."</option>";
    }
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Provincia: </td>
    <td>
    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?php
    if(isset($id_regioni)){
    $sql_provincia="SELECT * FROM provincie WHERE id_regioni='$id_regioni' ORDER BY nome";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($rigaP=mysql_fetch_array($query_provincia)){
    $provincia=$rigaP['nome'];
    $idProvincia=$rigaP['id_provincie'];
    echo "<option value='$idProvincia'";
    if ($id_provincie==$idProvincia) {echo " selected";}
    echo ">".$provincia."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Comune: </td>
    <td>
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?php
    if(isset($id_provincie)){
    $sql_comuni="SELECT * FROM comuni WHERE id_provincie='$id_provincie' ORDER BY nome";
    $query_comuni=@mysql_query($sql_comuni) or die (mysql_error());
    while ($rigaC=mysql_fetch_array($query_comuni)){
    $comune=$rigaC['nome'];
    $idComune=$rigaC['id_comuni'];
    echo "<option value='$idComune'";
    if ($id_comuni==$idComune) {echo " selected";}
    echo ">".$comune."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <label>
    <?php
    $sql_rappresentanti = "SELECT * FROM rappresentanti WHERE id_comuni='$id_comuni' ORDER BY nome";
    $query_rappresentanti=@mysql_query($sql_rappresentanti) or die (mysql_error());
    while ($rapp=mysql_fetch_array($query_rappresentanti))
    {
    $nome=$rapp['nome'];
    $id=$rapp['id_rappresentanti'];
    echo "</br>$id $nome</br>";
    }
    //libero memoria
    mysql_free_result($result);
    //chiudo la connessione
    mysql_close();
    ?>
    </form>

    thanks💋💋💋


  • Consiglio Direttivo

    Se strutturi la tabella rappresentanti così

    id | nome | id_comuni

    immagino dovresti scrivere
    [PHP] $sql_rappresentanti = "SELECT * FROM rappresentanti WHERE id_comuni='$id_comuni' ORDER BY nome";
    $query_rappresentanti=@mysql_query($sql_rappresentanti) or die (mysql_error());
    while ($rapp=mysql_fetch_array($query_rappresentanti))
    {
    $nome=$rapp['nome'];
    $id=$rapp['id'];
    echo "</br>$id $nome</br>";
    }[/PHP]
    :wink3:


  • User Attivo

    La tabella e' si strutturata come hai detto
    COSI IO OTTENGO
    1 Giorgio O
    2 Gianni

    E NON
    lombardia milano rho 1 Giorgio O

    puglia foggia vieste 2 Gianni

    IO VOLEVO PRENDERE ANCHE LE COLONNE DELLE ALTRE TRE TABELLE CREATE
    nome REGIONI
    nome PROVINCIE
    nome COMUNI
    e inserirle nella ricerca efettuata


  • Consiglio Direttivo

    Ah, vuoi che ti stampi tutti i campi allora? 😄
    Non avevo compreso:

    [php]<?php
    require('config.php');

    $id_regioni="";
    $id_provincie="";
    $id_comuni="";

    $id_regioni=$_POST['regione'];
    $id_provincie=$_POST['provincia'];
    $id_comuni=$_POST['comune'];
    ?>
    <form action="<?php $_SERVER["PHP_SELF"]?>" name="search" method="POST">
    <select onchange="document.search.submit()" name="regione">
    <option value="">Scegli regione...</option>
    <?php
    $sql_regione="SELECT * FROM regioni ORDER BY nome";
    $query_regione=@mysql_query($sql_regione) or die (mysql_error());
    while ($rigaR=mysql_fetch_array($query_regione)){
    $regione=$rigaR['nome'];
    $idRegione=$rigaR['id_regioni'];
    echo "<option value='$idRegione'";
    if ($id_regioni==$idRegione)
    echo " selected";
    echo ">".$regione ."</option>";
    }
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Provincia: </td>
    <td>
    <select onchange="document.search.submit()" name="provincia">
    <option value="">Scegli provincia...</option>
    <?php
    if(isset($id_regioni)){
    $sql_provincia="SELECT * FROM provincie WHERE id_regioni='$id_regioni' ORDER BY nome";
    $query_provincia=@mysql_query($sql_provincia) or die (mysql_error());
    while ($rigaP=mysql_fetch_array($query_provincia)){
    $provincia=$rigaP['nome'];
    $idProvincia=$rigaP['id_provincie'];
    echo "<option value='$idProvincia'";
    if ($id_provincie==$idProvincia) {echo " selected";}
    echo ">".$provincia."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <tr>
    <td>Comune: </td>
    <td>
    <select onchange="document.search.submit()" name="comune">
    <option value="">Scegli il comune...</option>
    <?php
    if(isset($id_provincie)){
    $sql_comuni="SELECT * FROM comuni WHERE id_provincie='$id_provincie' ORDER BY nome";
    $query_comuni=@mysql_query($sql_comuni) or die (mysql_error());
    while ($rigaC=mysql_fetch_array($query_comuni)){
    $comune=$rigaC['nome'];
    $idComune=$rigaC['id_comuni'];
    echo "<option value='$idComune'";
    if ($id_comuni==$idComune) {echo " selected";}
    echo ">".$comune."</option>";
    }}
    ?>
    </select></td>
    </tr>
    <label>
    <?php
    $sql_rappresentanti = "SELECT * FROM rappresentanti WHERE id_comuni='$id_comuni' ORDER BY nome";
    $query_rappresentanti=@mysql_query($sql_rappresentanti) or die (mysql_error());
    while ($rapp=mysql_fetch_array($query_rappresentanti))
    {
    $nome=$rapp['nome'];
    $id=$rapp['id'];
    echo "</br>$regione - $provincia - $comune - $id $nome</br>";
    }
    //libero memoria
    mysql_free_result($result);
    //chiudo la connessione
    mysql_close();
    ?>
    </form>[/php]
    😉


  • User Attivo

    grazie pero' non funziona
    boh
    se trovo lo sbaglio lo posto
    ciaoooooo