Newsgroup: it.comp.www.php
Titolo: form e 2 select option

Ragazzi non ne vengo fuori!
Ecco il problema:
devo inserire dei controlli di manutenzione per dei veicoli. La pagina da
all'utente la possibilita' di scegliere il veicolo da una select option e, a
seconda della tipologia del veicolo (se e' un camper o una roulotte) viene
popolata la seconda select option che mostra una lista di controlli
associati a quella tipologia di veicolo (es: controllo freno, tagliando,
controllo olio motore etc)
ho fatto cosi':
- ho una pagina htm con un form che richiama il mio script php es:
controlli.php?opt=retrivecontrolli
e ho 2 select option:
- il primo IDVeicolo con la lista di tutti i veicoli (il value e' l'id della
tabella), che tramite javascript, onchange fa il submit del forum.
- la pagina php lancia una select e ritorna alla pagina htm di prima il
risultato che viene usato per popolare il secondo select option
(IDControllo)
- nella pagina c'e' anche un campo text per l'inserimento della data
ora, il mio problema, e' che per poter inserire i dati nel db ho bisogno di
IDVeicolo, IDControllo e data, ma non so quando e come cambiare l'action del
forum.
questa cosa mi ha tenuto sveglio fino all'1 questa notte!!!
se serve posso mandare anche i relativi php e htm
grazie a tutti
Dade

 ha scritto nel messaggio
news:O7uFc.570241$rM4.23...@news4.tin.it...

Per ora, se non ricevo suggerimenti migliori ho tamponato cosi':
ho spezzato la pagina in 2 form:
dove ho la select option con la lista dei veicoli e' il form1
onchange fa il submit del forma controlli.php?opt=retrivecontrolli
e assegna il suo valore ad un campo che si trova nel form2
nel form2 con action=controlli.php?opt=save ho la seconda select option e il
pulsande di submit di questo form...
cosi' sembra andare... ma se ci fosse una soluzione piu' elegante...
ciao
Dade

 cambiare l'action del forum.
Proof of concept, dai una occhiata anche a queste libreria che ho
scritto tempo fa 
http://setecastronomy.stufftoread.com/go.php?ID=34
 .
<?php 
$veicoli = array (1 => 'macchina',
				  2 => 'camion',
				  3 => 'corriera');
$controlli = array (1 => array (1 => 'gomme', 2 => 'olio', 3 =>
'freni', 4 => 'sospensioni'),
				  2 => array (3 => 'freni', 4 => 'sospensioni'),
				  3 => array (1 => 'gomme', 2 => 'olio'));
if (!isset ($_POST['IDVeicolo'])) {
	$_POST['IDVeicolo'] = -1;
}
if (!isset ($_POST['IDControllo'])) {
	$_POST['IDControllo'] = -1;
}
?>
<form action="<?php print ($_SERVER['PHP_SELF']); ?>" method="post"
id="formcontrolli">
<select name="IDVeicolo" onChange="formcontrolli.submit()">
<?php 
	print ('<option value="-1">Selezionare il veicolo</option>');
	foreach ($veicoli as $id => $veicolo) {
		$selected = '';
		if ($_POST['IDVeicolo'] == $id) {
			$selected = ' selected="true"';
		}
		print ('<option value="' . $id . '"' . $selected . '>' . $veicolo .
'</option>');
	}
?>
</select>
<select name="IDControllo">
<?php 
	if (!array_key_exists ($_POST['IDVeicolo'], $controlli)) {
		print ('<option value="-1">Selezionare il veicolo</option>');
	} else {
		$controlli_veicolo = $controlli[$_POST['IDVeicolo']];
		foreach ($controlli_veicolo as $id => $controllo) {
			print ('<option value="' . $id . '">' . $controllo . '</option>');
		}
	}
?>
</select>
<input name="data" type="text">
<input type="submit" name="btnSubmit" value="Invia" />
</form>
-- 
I am what I am, I do what I can
Vuoi supportarmi? 
http://url.repository.biz/go/3E
L'uomo, conscio di sbagliare, persevera.


praticamente crei un array bidimensionale e prepari i dati da passare
all'htm... non c'avevo pensato :)
mi studio la lib che mi hai passato e passo ad implementarla nel mio
codice...
per ora che dire... grazie 1000 della risposta e della rapidita'  :)
Ciao
Dade