Visualizzazione dei risultati da 1 a 5 su 5

Discussione: form dinamico

  1. #1

    form dinamico

    Salve a tutti,
    io ho un problema con un form...
    il form di per se è molto semplice,
    ci sono 2 combobox html
    la prima prende dei valori dal database e li fa vedere nel menu a tendina,
    la seconda select anche deve prendere i valori dal database, ma in funzione del valore settato precedente.

    io non riesco a passare la variabile che contiene il valore della prima select
    alla query che si genera per popolare la seconda

    qualche suggerimento??

    grazie Alessandro

  2. #2
    Ciao,
    premetto che dovresti usare ajax per fare una richiesta asincrona al server.
    Pero' in alternativa, potresti creare due form es:

    - primo form
    <form name="mioform" method="post" action="">

    <select name="val1" onchange="document.mioformi.submit();">

    <option value="1">valore 1</option>
    <option value="2">valore 2</option>
    <option value="3">valore 3</option>

    .....

    </select>
    </form>

    con la funzione js document.mioformi.submit();
    (che e' una funzione implementata gia' nel browser)
    parte una POST appena esegui la scelta della OPTION,
    a quel form ne seguira uno cosi:

    <?php
    $valore_scelto = $_POST["val1"];

    QUI ESEGUIRAI LA QUERY IN FUNZIONE DEL VALORE SCELTO
    E POI RIEMPIRAI IL SECONDO FORM IN QUESTO MODO:

    ?>

    <form method="post" action="">

    <option value="1rec">valore 1 rec</option>
    <option value="2rec">valore 2 rec</option>
    <option value="3rec">valore 3 rec</option>

    .....

    </select>
    </form>

    Se non ti e' chiaro o vuoi altre info, fammi sapere,
    tenendo conto dell'esistenza di ajax, questo e' un metodo un po arcaico,
    ma funziona
    ciaooooo

  3. #3
    forse sono io che non ho capito....
    ma io nella prima combo ci metto i valori presi dal database

    <form id="form" name="form" method="POST" action="form.php">

    <select name="linea" id="linea" onchange="passa(this.value);">
    <option value="">Scegli linea </option>
    <?php
    require_once("function.php");
    $connessione = apri_DB();
    $query_linea = "SELECT id_linea, linea_nome FROM linea";
    $risultato_linea = mysql_query($query_linea,$connessione);
    while ($riga = mysql_fetch_assoc($risultato_linea))
    {
    echo "<option value=\"" . $riga['id_linea'] . "\">" . $riga['linea_nome'] . "</option>";
    }
    mysql_free_result($risultato_linea)
    ?>
    </select>

    in questa maniera

    la combo successiva deve tener conto del valore immesso nella select "linea"
    e fare una query per prendere i valori nel DB e mostrarli nella combo

    intanto grazie

    Alessandro

  4. #4
    se non vuoi cambiare pagina devi appoggiarti ad ajax.
    l'evento onchange del primo menu a tendina, mediante una funzione js, invierà una chiamata asincrona ad uno script php che popolerà le opzioni del secondo menu.

    questo potrebbe aiutarti
    http://forum.html.it/forum/showthrea...readid=1409459

  5. #5
    Ciao,
    praticamente si, per popolare la seconda combobox devi eseguire una query
    che recuperera' i valori dal db in funzione del valore della select "linea", cioe'
    avra come clausola WHERE il valore di quest'ultima.

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.