Modulo Webform - recupero dati dopo submit

3 contenuti / 0 new
Ultimo contenuto
Modulo Webform - recupero dati dopo submit

salve, sono un nuovo utente. mi sono iscritto perchè è da 2 giorni che cerco disperatamente in rete un modo per poter recuperare i dati che un utente inserisce e/o selezione e che poi il modulo processa al momento della submit del form.
in poche parole quello che voglio fare è realizzare una procedura php nella parte riservata al messaggio di conferma del form, andando a manipolare i dati che l'utente ha inserito. non voglio modificarli, ma solo farne un riepilogo e metterli a confronto con altri dati fissi (tipo una valutazione). mi basterebbe anche solo avere le variabili POST che usa il modulo, ma ho già provato e non sono ruscito a ricavarne niente.
qualcuno mi può aiutare?
grazie mille!

in drupal esiste un meccanismo ben preciso per definire la form, la validazione dei dati e la submit della stessa.

http://api.drupal.org/api/drupal/developer--topics--forms_api.html/6
http://api.drupal.org/api/group/form_api/6

andando alla spicciola, definisci un array con la form e le relative funzioni di validazione e submit, all'interno delle quali ti trovi una serie di array organizzati con la form di partenza e i rispettivi valori inseriti dall'utente.
in ogni caso non manipoli $_POST, poiché drupal lo fa per te.

infine esiste un meccanismo di override delle form, per modificare la form definita altrove anche da altri moduli, e che permette quindi un alto grado di personalizzazione.

Se vai alla pagina di editing del webform (node/xx/edit) tramite admin/content/webform poi scegliendo 'Modifica' del webform, troverai una voce 'Webform advanced settings' subito dopo 'Webform mail settings'...

Una volta espanso troverai una voce 'Additional Processing' dove poi inserire codice per analizzare il form (che sarà valida a quel punto) sono disponibile $form e $form_state - come per un normale funzione di xxx_submit() di una form...

Meglio che non scrivi troppo codice PHP in quel textarea, ma fai chiamare una funzione nel tuo modulo, per esempio, io faccio:

<?php
 NOMEMODULO_process_webform_XXX
($form, $form_state); 
?>

HTH

John

Più imparo, più dubito.