From: "Hauck, William B." <william.ha...@ibx.com>
Hi.

I'm working on the project request section of our new project tracking system. The request form is broken up into 12 pages-yes, lots and lots of data to be submitted.

Anyone have any experience / advice on how to handle that many fields? Should I use a single subroutine to handle it all based on a "page" variable? Or, should I simply have a subroutine per page? How about going back to correct something the user messed up during initial entry-we want to show a summary of the data before final submission.

Any help is appreciated.

Thanks,

bill




Hi Bill,

I think the best approach is to create an action for each "page" of the form and after each form submission partially update one or more database tables, saving a marker that shows which was the last page completed.

And after each form submission, depending on some options chosen by the user you can redirect to the next form or to display a certain form which is displayed only in some conditions.

After the user submitted the first form, in which you may ask him/her for his/her email, you can automaticly send him/her an email with a link that can be used to access this "wizard" where he/her left it, maybe even from another computer. This way, it is not a problem if the user's computer has frozen after he/she completed 99% of the wizard or he/she should continue only after a certain period.

You can also put "previous links in every page that would display the previous filled form, pre-filled with the values this user already filled (which are taken from the database).

For creating the forms you can use a tool like HTML::FormFu or manually-created forms... it doesn't matter.

Octavian


_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/

Reply via email to