[php] caselle di selezione

Salve a tutti,

domanda banale: è possibile creare un form che preveda caselle di selezione con l'aggiunta di un'area testo per l'inserimento dei dati. Mi spiego meglio, l'utente dovrebbe avere la possibilità di consultare un menù a tendina e se nel caso la voce che lo interessa non ci fosse, di poter aggiungere l'informazione

inviato 10 anni fa
alice1
X 0 X

Da dove prendi i dati per riempire la casella?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

I dati già inseriti nel menù a tendina provengono da un db MySQL. Questo deve essere aggiornato e probabilmente devono essere inserite nuove informazioni, così ho bisogno che l'utente possa consultare le voci del menù a tendina ed eventualmente aggiungere quella mancqante.

risposto 10 anni fa
alice1
X 0 X

perché non inserisci un link vicino alla casella con la scritta "aggiungi voce". Il link condice ad una pagina nella quale, attraverso un form, viene specificata una nuova voce per l'elenco...

Si tratta poi di fare la solita INSERT nel DB, magari controllando prima se la voce indicata dall'utente era già presente nella tabella.

Finita la procedura si ritorna alla pagina iniziale.

Quale passaggio potrebbe crearti problemi?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Grazie mille....credo sia la soluzione migliore e non penso possa creare problemi

risposto 10 anni fa
alice1
X 0 X

In realtà un problema c'è. Il form per l'inserimento dei dati prevede una serie di campi con menù a tendina, quindi dovrei creare un link per ognuno di questi.

Quando però io inserisco una nuova voce nel primo campo e clicco su insert non mi da la possibilità di continuare con gli altri campi e se rivado sulla pagina iniziale passa direttamente ad un nuovo record.......spero di essermi spiegata

risposto 10 anni fa
alice1
X 0 X
e se rivado sulla pagina iniziale passa direttamente ad un nuovo record

questa non l'ho capita  :o

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

cerco di essere più chiara....l'utente sta compilando il form per l'inserimento dei dati, arriva al campo x controlla il menù a tendina e non trova la voce di suo interesse allora clicca su 'Aggiungi voce' e va alla pagina di inserimento, digita il dato, clicca su insert e a questo punto il record viene inserito nel Database senza che egli abbia l'opportunità di inserire i dati degli altri campi

risposto 10 anni fa
alice1
X 0 X

allora potresti mettere una normale casella di input accanto alla casella di selezione in cui l'utente può inserire del testo libero se non presente nella casella stessa.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Ok, grazie

risposto 10 anni fa
alice1
X 0 X

Ho provato ma mi succede questo: se l'utente sceglie di digitare direttamente il dato nella casella di input tutto ok, il record viene salvato con le nuove informazioni, ma se invece lo sceglie dal menù il campo  rimane vuoto.

E' come se il form dasse precedenza al comando INSERT ignorando l'alternativa della casella del SELECT, in poche parole non riesco ad integrare le due possibilità

risposto 10 anni fa
alice1
X 0 X

hai dato 2 nomi diversi alla casella si selezione e a quella di input?

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Ho fatto in questo modo

<SELECT name="Regione" TYPE="Text" id="Regione">
<OPTION> </OPTION>
<OPTION>Toscana</OPTION>
<OPTION>Lazio</OPTION>
</SELECT>
<br>Altro<br><INPUT name="Regione" TYPE="Text" id="Regione">
risposto 10 anni fa
alice1
X 0 X

ed hai fatto male, perché non puoi usare lo stesso nome e lo stesso id per due distinti elementi di un form!!!

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X

Ma allora, se io do la possibilità all'utente di scegliere tra le voci del menù a tendina o di digitare direttamente il dato nella casella di input, ed in entrambe le condizioni l'informazione deve confluire nel campo regione del mio DB, quale nome e id devo attribuire ai due elementi del form?......Scusami se non riesco a capire.

risposto 10 anni fa
alice1
X 0 X

Se vuoi realizzare un form "intelligente" devi inserire un po di intelligenza nello script...

In pratica dovresti controllare se è stato selezionato qualcosa con la casella di selezione (select_nome_campo), in caso contrario verifichi se la casella di input associata (input_nome_campo) contiene del testo...

Se non usi 2 nomi distinti (select_nome_campo e input_nome_campo) non potrai distinguere i valori selezionati o inseriti dall'utente ma ne vedrai solo uno dei due.

 :bye:

risposto 10 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda
 

[pagina costruita in 0.013s]