- Home
- Categorie
- Coding e Sistemistica
- PHP
- Come passare informazioni da una select all'altra nello stesso form
-
Come passare informazioni da una select all'altra nello stesso form
Ciao a tutti,
qualcuno mi sa dire come faccio a passare informazioni da una tendina all'altra per fare una query dinamica?<form id="form1" name="form1" method="post" action="" onsubmit="return check(this)"> <select name="sigla" id="sigla" onChange="inviaCambiamenti();"> <?php /* faccio estrarre la tendina dinamica */ $tendinaprov=mysql_query(" SELECT DISTINCT sigla FROM provincie ORDER BY provincia ", $connessione); while ($tempo_cat=mysql_fetch_array($tendinaprov)){ $sigla=$tempo_cat['sigla']; echo " <option value='$sigla'>$sigla</option>"; } /* Fine del pezzo di estrazione della sigla */ </select> ?> ```questa è la prima select dinamica che preleva i dati dalla tabella provincie ammettiamo che dal form scelgo la provincia di Alessandria dovrebbe essere stampata dalla stringa $sigla=$tempo_cat['sigla']; come faccio a far passare la variabile sull'altra tendina?
<select name="citta" id="citta" >
<?php /* faccio estrarre la tendina dinamica */
$tendinacitta=mysql_query("
SELECT DISTINCT citta
FROM citta
WHERE provincia = '$sigla'
ORDER BY citta
", $connessione);
while ($tempo_cat=mysql_fetch_array($tendinacitta)){$citta=$tempo_cat['citta']; //15
echo " <option value='$citta'>$citta</option>";
}
/* Fine del pezzo di estrazione della categoria */
?> </select>
</form>
Magari è trucco da ragazzi ma io ci sto impazzedo!! Grazie in anticipo :ciauz: Dimenticavo nell'Head della pagina ho messo il seguente codice
<script type="text/javascript">
function inviaCambiamenti(){
document.form1.action = "<?php echo $_SERVER['PHP_SELF']; ?>";
document.form1.submit();
}
</script>
-
Ciao ideasiti,
lo script che hai postato che risultato ti da nella seconda select?
Inoltre prova a fare un po' di debug: fatti stampare a monitor la query mettendo la riga di codice:
***echo $tendinacitta;prima della riga:
while ($tempo_cat=mysql_fetch_array($tendinacitta)){*e subito dopo la precedente:*
var_dump($tempo_cat);***per farti stampare il contenuto dei singoli record.
Inoltre, dopo la query fatti stampare gli eventuali errori in caso di insuccesso:
*** $tendinacitta=mysql_query("
SELECT DISTINCT citta
FROM citta
WHERE provincia = '$sigla'
ORDER BY citta
", $connessione) or die mysql_errno() . ": " . mysql_error() . "\n***Facci sapere cosa viene fuori!
-
Ciao, grazie per l'aiuto e scusa per il ritardo della risposta, ho avuto
problemi di connessione al forum e non mi sono riuscita a collegare... e poi sono partita per qualche giorno di ferie!cmq ho risolto avevo sbagliato a recuperare i dati
ecco come
Tendina provincia
<select name="tendasigla" id="tendasigla" onchange="inviaCambiamenti();"> <option value="---" selected="selected">---</option> <?php /* faccio estrarre la tendina dinamica */ $tendinaprov=mysql_query(" SELECT DISTINCT sigla, provincia FROM provincie ORDER BY provincia ", $connessione); while ($tempo_cat=mysql_fetch_array($tendinaprov)){ $sigla=$tempo_cat['sigla']; //15 $provincia=$tempo_cat['provincia']; //15 echo " <option value='$sigla'>$provincia</option>"; } /* Fine del pezzo di estrazione della categoria */ ?> </select>
Tendina comune
<select name="citta" id="citta" > <?php /* faccio estrarre la tendina dinamica */ $sceltatendasigla=$_POST['tendasigla']; $tendinacitta=mysql_query(" SELECT DISTINCT citta FROM citta WHERE provincia = '$sceltatendasigla' ORDER BY citta ", $connessione); while ($tempo_cat=mysql_fetch_array($tendinacitta)){ $citta=$tempo_cat['citta']; //15 echo " <option value='$citta'>$citta</option>"; } /* Fine del pezzo di estrazione della categoria */ ?> </select>
Sarà il troppo cibo delle feste, ma adesso come adesso non mi ricordo nemmeno come ci sono arrivata!!!
Ciao!!