form per inserimento e aggiornamento dati

4 contenuti / 0 new
Ultimo contenuto
form per inserimento e aggiornamento dati

Salve a tutti,
Vorrei fare un form per un inserimento (INSERT) di dati e il loro aggiornamento (UPDATE in sql) in un database.
Per l'inserimento non ho problemi, ma per l'update non capisco esattamente cosa fare e mi spiego:
con un select presento all'utente l'elenco dei record che sono stati inseriti e il comportamento corretto dovrebbe essere:

  • Una volta che l'utente sceglie dall'elenco vorrei che fossero precaricati i dati dal record giusto.
  • l'utente modifica i campi e preme sul tasto per fare l'aggiornamento

Io cosa ho fatto:
al select ho aggiunto il codice
'#attributes' => array('onchange' => 'this.form.submit();'),
per fare in modo che ci sia l'aggiornamento SENZA premere il submit.
Ma in realta' il flusso non si blocca... il form fa l'insert con dei dati o l'update con dati mancanti.

Come posso fare?
Qual'e' la logica corretta?
Posso pensare di usare il validate per bloccare il flusso? , e se si come?

Aiuto!!!!!!

Potresti utilizzare una chiamata ajax per caricare i dati nel form, o più semplicemente separare il form che consente la selezione del record da quello che ne consente la modifica.
In quest'ultimo caso, facendo submit del primo form si passa al server l'indice del record da modificare. Questi dovrebbe poi ripresentare la stessa pagina con i campi del secondo form riempiti dai campi del record selezionato (attributo "#default_value").
Corretto?

dalad wrote:
Potresti utilizzare una chiamata ajax per caricare i dati nel form, o più semplicemente separare il form che consente la selezione del record da quello che ne consente la modifica.
In quest'ultimo caso, facendo submit del primo form si passa al server l'indice del record da modificare. Questi dovrebbe poi ripresentare la stessa pagina con i campi del secondo form riempiti dai campi del record selezionato (attributo "#default_value").
Corretto?

Per ajax aspetto un po :) :) visto che non ne so nulla... Ho visto che drupal nella sue fapi ha tutta quella serie di attributi AHAH, ma al momento lo lascio da parte :(
Si, uso il default value per impostare il valore preso dal DB; al momento l'unico modo che ho trovato per distinguere l'insert dall'update e' stato quello di aggiungere un checkbox del quale controllo il valore nella funzione submit.
Grazie!!

A me verrebbe da fare:

  • Hai un form che presenta le informazoni del tuo oggetto
  • Il form viene presentato all'utente che lo popola e effettua il submit
  • Nel form metterei un campo hidden che contiene l'ID dell'elemento che sto modificando.
  • Se l'ID non è ancora settato faccio l'insert, mentre se è già impostato faccio l'update

Alla fin fine la differenza tra insert ed update è solo nel passare un parametro in pià a drupal_write_record.

Ciao
Marco
--
My blog
Working at @agavee