Form con tag select dinamici

ciao

no, il name dell'input serve per poi prelevare il dato (value) ed elaborarlo
es.

$nome_el=$_POST['nome'];
$cognome_el=$_POST['cognome'];

Ok, fin qui ho afferrato (ho fatto anche una piccola prova, ed ebbene si, è semplice :mavieni:)

Solo che per quelle dannate select che diventano selezionabili in base a quel che ho selezionato in precedenza (es. generatore azoto), rimango ancora in alto mare..
 
ciao, ho visto adesso la tua domanda
Quindi Marco come dovrei operare per far si che le select non siano selezionabili per determinate categorie (ad es. per "generazione azoto" far si che le select "filtrazione" e "portata" non siano selezionabili)?
come ha detto marco devi utilizzare ajax, non è semplice.
io (grazie a consigli di eliox) sono riscito a fare che selezionando nella selct il nome della provincia, enella successiva select appaio i nomi dei comuni della provincia selezionata.
però, come nel tuo caso, non sono riuscito a fare tre select.
altro problema è che se l'utente non ha js attivo devi fare in modo che le select appaiano comunque tutte e fare i controlli lato server
 
Piu che altro forse ho sottovalutato il problema :D

Fondamentalmente quello che a me serve è la possibilità di dare all'utente di poter ricercare un prodotto da qualsiasi pagina...
Mi stuzzicava l'idea di un campo "cerca" generico, anche se preferivo dare dei "paletti" di ricerca (tramite appunto le select di un form) in modo che cosi l'utente aveva gia un idea dei prodotti che poteva trovare...
Perchè chiaramete se mi cerca "pasta asciutta" non la troverà mai sul mio sito..

Per quello sono andato nel panico :dipser:
 
ciao
non entrare in panico
... anche se preferivo dare dei "paletti" di ricerca ...
il metodo va bene con le select. secondo me è giusto mettere dei paletti
(anche se la "pastasciutta" mi piace)
dai (senza ajax) non è difficile, con un po' di pazienza ci arriviamo (altrimenti a che serve il forum, non crederai che serva solo per far diventare bello alessandro?)
 
ciao
non entrare in panico

il metodo va bene con le select. secondo me è giusto mettere dei paletti
(anche se la "pastasciutta" mi piace)
dai (senza ajax) non è difficile, con un po' di pazienza ci arriviamo (altrimenti a che serve il forum, non crederai che serva solo per far diventare bello alessandro?)

Ahaha no tranquillo, è che sai, è l'inesperienza su questi nuovi linguaggi.
Stavo pensando che forse una soluzione come quella di cui parlavi tu prima, ovvero quella di "regione->provincia->città" potrebbe essere una soluzione...
Dato che in base a una regione (prima select) vengono dati contenuti dinamici sulla provincia (seconda select) che a loro volta danno valori riferiti alla seconda select.
Penso di poter adattare una soluzione del genere per il mio caso...

Domanda che forse ti farà inorridire: serve comq il database in questo caso?
 
ciao
Domanda che forse ti farà inorridire: serve comq il database in questo caso? :moira:
si ti serve comunque un db
per quanto riguarda quello che dicevo io sono riuscito (con ajax) a fare solamente
select provincia ---> select comuni delle provincia
e non a tre livelli come serve a te
select regione --> select province della regione --> select comuni della provincia

io ho risolto per avere le province dentro la regione con il tag <outgroup..> per cui la select mi appare in questa maniera (in ordine alfabetico)

Valle d'Aosta
Aosta
Abruzzo
L'Aquila
..........
........
Veneto
Belluno
.........
Vicenza

dove puoi selezionare solo i nomi della provincia
 
Ho capito.
Ora provo a vedere cosa riesco a fare dato che ho trovato qualche tutorial..
Grazie comunque per l'aiuto ;)
 
Scusate ma avevo perso anche io questa discussione, il sistema di notifica del forum dopo un po' mi da i form come già letti, anche se non è vero per me. Comunque...

Ora ne sparo un'altra! Niente Ajax vai di JSON :D
Può sembrare una sboronata ma non lo è.
JavaScript Object Notification è un componente del core di PHP dalla versione 5.2 e quindi utilizzabile facilmente, lato PHP ha solo tre funzioni json_encode() json_decode() json_last_error().
Lato Javascript è un po' più complesso ma tutto sommato non difficile, in fondo dobbiamo solo chiedere al php di darci una stringa formattata con i dati in uscita dal database e poi tramite un ciclo formare le opzioni per la select.

Parti dalla prima select, quella con i prodotti, un utente fa click su quella e parte la richiesta al php che risponde con una stringa formattata in json che letta dallo stesso javascript scrive i giusti campi option nella seconda select e così via.
Per la stringa in PHP è facile, letto il database relativamente alla domanda, per esempio domanda = azoto, risposta: [1]:flangiato,filettato[2]:500,800 valori presi a caso, non conosco minimamente la materia, ma non importa il concetto di base dovrebbe essere questo.
PHP:
// Ora il php, letto il database risponde:
/*
    Convert PHP array to JSON
    --
    Using:
     - on server side: echo(arr2json([PHP array]))
     - on client side(JavaScript): var obj = eval('(' + [XMLHTTPRequest.responseText] + ')');
*/
    function arr2json($arr){
        foreach($arr as $k=>&$val) $json[] = $k.':'.php2js($val);
        if(count($json) > 0) return '{'.implode(',', $json).'}';
        else return '';
    }
    function php2js($val){
        if(is_array($val)) return arr2json($val);
        if(is_string($val)) return '"'.addslashes($val).'"';
        if(is_bool($val)) return 'Boolean('.(int) $val.')';
        if(is_null($val)) return '""';
        return $val;
    }
?>
L'esempio l'ho preso dalle pagine del PHP, ovviamente non so se andrà bene al tuo caso, comunque non conoscendo ancora la struttura del tuo database, gli esempi fatti sono solo esempi appunto.
Sulla questione dell'accessibilità relativa al javascript in parte concordo con borgo, ma qui bisogna fare una scelta di campo.
O si implementano funzionalità per il quale serve il javascript e basta, oppure si torna ad un vecchio metodo, ovvero nel tuo caso tre pagine, ognuna col suo form, la prima per la prima select che chiama la seconda che chiama la terza che da anche la risposta.
Un po' un casino, meglio il Web 2.0 :D
Dipende anche dal target dell'utenza, se ho capito bene sono prodotti che saranno visualizzati da installatori, non dai semplici clienti di un ferramenta, se ho capito bene un'utenza con sistemi operativi eterogenei ma tutti con browser che usano javascript, magari qualcuno avrà ancora internet explorer 5, ma non è certo un problema.

Per borgo :) vedo dal tuo secondo esempio, quello con nome e cognome che ancora usi le label nel modo errato :D
 
Ciao a tutti e due, non ero riuscito a leggere i vostri post in quanto non presente in ufficio..

Per Marco: si, si tratta di impianti di grosse dimensioni che un comune privato non comprerebbe, il target di clienti è formato prevalentemente da grosse ditte, quindi presumo che abbiano comunque delle versioni di browser abbastanza aggiornate (questo purtroppo non si può mai sapere, io da Analytics qualche informazione la ricavo ma è da prender comq con le pinze) quindi PRESUMO che javascript sia abilitato...

Proverò le soluzioni che mi avete dato e vedrò qual è la migliore =)
Nel frattempo me la sto cavando con quella in ajax, ma si sa mai che risulta migliore un altra... insomma un casino!
Quando riuscirò la posterò direttamente qui così anche in futuro chi ne avesse bisogno non diventa matto come me! =)
 

Discussioni simili