Passaggio di variabili tra combo

Ucciow

Nuovo Utente
24 Nov 2009
2
0
0
Ciao a tutti,
ho da poco intrapreso la programmazione con php e MySQL e spero che mi possiate dare una mano per risolvere i miei dubbi.
Ho un inconveniente di questo tipo: passare il valore di un menu a t:)endina all'interno di un codice php (presente sulla stessa pagina) che permette di generare i valori (secondo delle query e dei calcoli) del secondo menu a tendina. La mia idea era quella di definire il menu a tendina ( il secondo) e di inserire all'interno dei tag il codice php che prende il valore del primo menu e lo elabora, come riportato nel codice seguente:

codice:

<select size="1" name="permanenza">
<option name="permanenza" value="-1">Selezionare numero di settimane</option>
<?php
// verifica variabile settata
if(isset($_POST['arrivo']){
$arrivo=$_POST['arrivo'];
// verifica che non ci sia il valore di default ma sia settata una data
if($arrivo!= "Selezionare una data" )
{ //calcolo del numero di settimane prenotabili
$rows = "SELECT count(*) FROM settimane";
$res_rows = mysql_query($rows);
$array1 = mysql_fetch_array($res_rows);
//estrazione data arrivo
$have_id = "SELECT Id_settimana FROM settimane WHERE Data_inizio ='$arrivo'";
$res_id = mysql_query($have_id);
$array2 = mysql_fetch_array($res_id);
//definizione della variabile differenza
$max =$array1[0]-$array2[0]+1 ;
for ($i=1;$i<=$max;$i++) {
echo "<option value=\"$i\">$i</option>";
}
}
?>

L'errore che mi viene riportato è nell' isset($_POST['arrivo']). Che non possa essere utilizzato il method POST per passare valori di variabili all'interno della stessa pagina?
Grazie sin d'ora.:)
Antonio
 
Capisco cosa vuoi fare e praticamente ti sei risposto da solo. I valori di $_POST vengono istanziati solamente quando il form viene inviato. Se venissero generati on-the-fly, come dici tu, che gusto ci sarebbe ad usare AJAX? :D

Comunque proprio per questo ora hai due possibilità. Recuperare dinamicamente i dati dallo script con AJAX, in modo da fare tutto nella stessa pagina, oppure semplicemente utilizzare due pagine PHP. Una per la prima select e una per la seconda, ma mi sembra molto più professionale usare AJAX...
 
Ciao e grazie per il tuo contributo.
In realtà in questo momento usare una soluzione professionale mi servirebbe a poco, nel senso che il codice che sto sviluppando mi serve esclusivamente per sostenere un esame. Stavo provando infatti a creare anche dei file .asp, ma vedo che mi portano via un bel pò di tempo, quindi per adesso mi andrebbe bene anche una doppia pagina .php. Avresti quache esempio da mostrarmi per capire come muovermi ?
Grazie mille.
Ciaociao:)
 
credo che oltre che più professionale usare ajax in questo caso sarebbe anche più semplice, dai uno sguardo a questo articolo
 

Discussioni simili