Select dinamiche

WottaFacca

Utente Attivo
20 Mar 2015
134
0
0
Desenzano d/G
Ho trovato sul forum un'esercizio simile già fatto,questo fatto da @criric.

Ho provato a modificarlo, sistemandolo con le tabelle che ho io ma non riesco a farlo funzionare, il codice è questo

HTML:
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="generator" content="AlterVista - Editor HTML"/>
  <title></title>
   <title>Comuni italiani</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
        <style type="text/css">
            div.ricerca {
                line-height: 34px;
            }
            div.ricerca span {
                display: inline-block;
                width: 110px;
                text-align: right;
                padding-right: 4px;
            }
			
        </style>
		
        <script type="text/javascript">
            $(document).ready(function(){
                comuni();
                $("select").change(function(){
                    comuni();
                })
            })
            function comuni() {                
                $.ajax({
                    type: "POST",
                    url: "prova.php",
                    data: $("#ricerca").serialize(),
                    success: function(response){
                        eval(response);
                    }
                }); 
            }
        </script>
  
</head>
<body>

<html>
       
        <div class="ricerca">
            <form id="ricerca">
                <span>Folder :</span>
                <select name="IDFolder">
                    <option value=""></option>
                </select><br/>
                <span>Capsule :</span>
                <select name="IDCapsule">
                    <option value=""></option>
                </select><br/>
                <span>Report :</span>
                <select name="IDReport">
                    <option value=""></option>
                </select>
            </form>
        </div>

</body>
</html>

PHP:
  <?php

// recupero valori delle select
$folder = $_REQUEST['IDFolder'];
$capsule = $_REQUEST['IDCapsule'];
$report = $_REQUEST['IDReport'];

// mi connetto al database
$sql = new mysqli("localhots", "xxx", "xxx","nomeDB");

// estraggo tutte le regioni
$query = "SELECT IDFolder FROM folder";
$result = $sql->query($query);

// svuoto la select regione
echo "$('select[name=\"IDFolder\"]').empty();";

// aggiungo una option vuota
echo "$('select[name=\"IDFolder\"]').append('<option value=\"\"></option>');";

// ciclo i risultati della query
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
    // imposto il selected sull'eventuale regione scelta
    $selected = "";
    if ($row['IDFolder'] == $folder) {
        $selected = "selected=\"selected\"";
    }

// popolo la select
    echo "$('select[name=\"IDFolder\"]').append('<option $selected value=\"" . $row['IDFolder'] . "\">" . addslashes($row['IDFolder']) . "</option>');";
}

// se è stata scelta una regione
if (!empty($folder)) {
    // estraggo le province della regione scelta
    $query = "SELECT IDCapsule FROM capsule WHERE IDFolder ='$folder'";
    $result = $sql->query($query);
    // svuoto la select provincia
    echo "$('select[name=\"IDCapsule\"]').empty();";
    // aggiungo una option vuota
    echo "$('select[name=\"IDCapsule\"]').append('<option value=\"\"></option>');";
    // ciclo i risultati della query
    while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
        // imposto il selected sull'eventuale provincia scelta
        $selected = "";
        if ($row['IDCapsule'] == $capsule) {
            $selected = "selected=\"selected\"";
        }
        // popolo la select
        echo "$('select[name=\"provincia\"]').append('<option $selected value=\"" . $row['IDFolder'] . "\">" . addslashes($row['IDCapsule']) . "</option>');";
    }
}

// se è stata scelta una provincia
if (!empty($capsule)) {
    // estraggo i comuni della provincia scelta
    $query = "SELECT IDReport FROM report WHERE IDCapsule ='$capsule'";
    $result = $sql->query($query);
    // svuoto la select comune
    echo "$('select[name=\"IDReport\"]').empty();";
    // aggiungo una option vuota
    echo "$('select[name=\"IDReport\"]').append('<option value=\"\"></option>');";
    // ciclo i risultati della query
    while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
        // imposto il selected sull'eventuale comune scelto
        $selected = "";
        if ($row['IDCapsule'] == $report) {
            $selected = "selected=\"selected\"";
        }
        // popolo la select
        echo "$('select[name=\"IDReport\"]').append('<option $selected value=\"" . $row['IDCapsule'] . "\">" . utf8_encode(addslashes($row['IDReport'])) . "</option>');";
    }
}
?>

le tabelle hanno già tutti i dati inseriti e sono strutturate in questo modo:

folder: IDFolder, Descrizione
capsule: IDFolder,IDCapsule,Descrizione
report: IDFolder,IDCapsule,IDReport,Descrizione


Grazie mille in anticipo per chiunque provi ad aiutarmi :)

WottaFacca
 
Ultima modifica:

WottaFacca

Utente Attivo
20 Mar 2015
134
0
0
Desenzano d/G
Rettifica

Sono riuscito a sistemare il tutto in modo da far funzionare i 3 menù a tendina, ma adesso ho bisogno di aggiungere una textarea e un bottone, che inviano i dati selezionati + la descrizione inserita nella textarea ad una nuova tabella.

Grazie in anticipo per chi riesce ad aiutarmi

WottaFacca
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, devi inserirli tra i tag <form> e <form> aggiungi al tag <form> action e method e il gioco è fatto
HTML:
<form id="ricerca" method="post" action="pagina_che_vuoi.php">
    <span>Folder :</span>
    <select name="IDFolder">
        <option value=""></option>
    </select><br/>
    <span>Capsule :</span>
    <select name="IDCapsule">
        <option value=""></option>
    </select><br/>
    <span>Report :</span>
    <select name="IDReport">
        <option value=""></option>
    </select>
    <textarea name="test" rows="5" cols="32"></textarea>
    <input type="submit" name="invio" value="Invia"/>
</form>
 

WottaFacca

Utente Attivo
20 Mar 2015
134
0
0
Desenzano d/G
Sono riuscito a fare tutto, adesso tutti i dati vanno correttamente inseriti nel db e funziona tutto.
Grazie mille :)

Avrei però un'altra piccola domanda.
Io ho nelle mie tabelle la descrizione di tutti i dati, se volessi visualizzare nel menù a tendina anche quella come posso fare?
 
Discussioni simili
Autore Titolo Forum Risposte Data
L Select Dinamiche...da txt? PHP 3
eraclio666 [PHP] 2 SELECT DINAMICHE PHP 8
G [Javascript] select dinamiche Javascript 0
H [PHP] Select dinamiche : regioni province comuni PHP 2
H select dinamiche php mysql PHP 4
H problema con select dinamiche e javascript Javascript 0
criric Select dinamiche : regioni province comuni Snippet PHP 28
S Select dinamiche concatenate Ajax 8
F Problema select dinamiche con php e jquery jQuery 1
Z Select dinamiche PHP MySQL Javascript PHP 1
R select dinamiche che riportano valori in una textarea. Javascript 8
M select dinamiche con Jquery e php jQuery 9
V Select dinamiche in php PHP 1
L Select dinamiche - stampa ID e non il valore PHP 3
F Select Dinamiche in fase di modifica Classic ASP 1
L Aiuto per select dinamiche in asp Classic ASP 3
F Select dinamiche con ASP & AJAX Ajax 11
A select dinamiche, errore assurdo, non compare la terza select Javascript 0
J Select automatiche o dinamiche PHP 3
L Ripetere Campi disabilitando input in riferimento ad un valore della select jQuery 0
otto9due Ordinare option di una select Javascript 5
W MySQL ciclo in SELECT MySQL 0
W MySQL SELECT list dinamica MySQL 0
M Select Option dentro una Table jQuery 2
G Colorare menu select attraverso ricerca php PHP 0
L problema con query select PHP 2
F menù select dinamico da db in php PHP 3
D popolare campi tra th alla select PHP 36
M Estrarre valore con SELECT COUNT PHP 0
M Creare un campo input select quantità di un numero intero prelevato dal db PHP 3
E Php select option e ajax PHP 23
R Select concatenata che non funziona la seconda volta Ajax 3
L select join e sottrazione punti PHP 13
L input dati con inser into select ? PHP 4
V hierarchy-select jQuery 0
Emix Select concatenate php sql ajax PHP 2
F query e form con select multipla PHP 17
T recupero valori select multipla da android Javascript 3
J php, scegliere autista da select e mostrare se ha fatto un incidente PHP 8
Tommy03 Select in ordine per numero di record MySQL 7
T problema con select dinamica con jquery Javascript 0
J Far comparire e scomparire un div con un select Javascript 1
M Opzioni select da 1 a 200 PHP 0
I Fatal error: Query Failed! SQL: SELECT * INTO OUTFILE PHP 1
C input in sostituzione della select PHP 2
G Insert into select - Aiuto MySQL 0
max1974 autocomplete trigger select jQuery 0
X [Select] Valori chiave non presenti in un'altra tabella MySQL 2
M Estrarre dati da una select HTML PHP 3
MarcoGrazia jquery validate, necessità di validare almeno un elemento select su due jQuery 1

Discussioni simili