wow!
I think i'd try and do it as a main form with pop-ups, so at least you have
one place where you can keep track of all that stuff.
For steps 3 and 4 i'd definately say a pop-up, since its something you can
repeat, like, er, like adding a development mapping to studio for example.

Probably not really the same, but still handling loads of form stuff in a
wizard...Last year i had to build a form builder, that is a wizard which
allows the user to build a form, which they then stick on their site via a
call to a custom tag.
I ended up having "template" form elements as wddx stored in the dB.
When creating a new item (ie adding a checkbox to a new form) i get the
template wddx for a "checkbox" from the dB, turned it into a CF var, then
threw it at the edithandler. This handler returned it in form fields where
the name of the field related to the dot notation of a cf structure (2
levels, plus arrays), so i wrote a tag to whip those back into a CF var.
And from then on the data is passed back and forth in a hidden field as
WDDX, and back into a CF var if it gets back to the edit handler.
I can't quite remember who the finished form gets displayed, but its kind of
similar, and for a while i almost built form builder in itself, but that
just got too mad.

I'd love to release it but the people who paid for it wouldn't be too
chuffed...

Also, using dot notation in form fields to represent a structure was, IMHO,
pretty cool. Getting it back was a bit of a pain, but in CFMX its a doddle -
i re-wrote my clunky tag in about 5 lines cos of the way CFMX creates
structures if you set vars with dots in the name - a loop, a temp struct a
couple of sets and a struct append and bobs your uncle.

I've seen people saying you can't have dots in form fields or variables in
CFMX, but last time i tried it worked OK.

Bert

> -----Original Message-----
> From: Keith Young [mailto:[EMAIL PROTECTED]]
> Sent: 17 May 2002 18:02
> To: [EMAIL PROTECTED]
> Subject: Complex forms: the horror! :)
> 
> 
> Hey all,
> 
> Have any of you handled very complex, multi-page forms before?
> 
> I am setting up a form, it is 4 pages long.  The first two 
> pages are very simple, and the remaining two are rather 
> complex. For example, pages 3 and 4 both have default rows 
> that are always present, that may or may not have data filled 
> in (each row contains 6 textfields for 6 years worth of 
> data).  And on top of that there is an option for the user to 
> add non-standard rows based on a DDLB (so, dynamically add 
> rows to the page - and again 6 text fields per row added).
> 
> If the above wasn't enough, on page 4 the user can select to 
> add another series of data for pages 3 and 4 and will go back 
> to a blank page 3 and can repeats pages 3 and 4 as many times 
> as needed to enter all the data.
> 
> The structure of this beast is unbelievable.
> 
> I currently am using 4 arrays (one per page). the page 1 and 
> 2 arrays are 1d..not bad...
> The page 3 and 4 arrays can get up to 4 dimensions as it is now.  
> 
> To give you an idea on page 3:
> 
> //non-dynamic row
> $wizpage3[operation][rowname][year]=data
> 
> //dynamic row
> $wizpage3[operation][dynamic_rowname][row_num][year]=data
> 
> And when you stuff, all those into the session array the 
> dynamic rows makes it 5 dimensions...sheesh...
> 
> I DO have the data storing in the arrays just fine for as 
> many times as the user needs to enter pages 3 and 4.  
> Originally I was planning on storing the arrays in the page 
> itself as hidden fields, but it quickly became obvious that 
> the page would be huge with all the hidden fields if a user 
> entered pages 3 and 4 a bunch of times).  So I am using a 
> session variable to store the arrays.  The problem with 
> sessions is if the user hits the next/prev buttons in their 
> browser(not the ones I coded into the page)... you get page 
> expired errors, which I really don't like...
> 
> All of the data entry is actually the same dsp_ page with if 
> statements to control which page is displayed.  I have 
> in-form nav buttons (next/prev) to move back and forward in 
> the wizard interface.  
> 
> I guess I am more curious as to how other people would handle 
> something this complex.  I have been wracking my brain as to 
> whether or not I have gone down the wrong path with this, or 
> could have made it simpler, but it works...  The more I code, 
> the more I worry about how unwieldy this could become...
> 
> Maybe I am venting more than anything... heh... its friday...weee :)
> 
> 
> 
> Cheers,
> Keith.
> 
> 
> 

==^================================================================
This email was sent to: [email protected]

EASY UNSUBSCRIBE click here: http://topica.com/u/?bUrFMa.bV0Kx9
Or send an email to: [EMAIL PROTECTED]

T O P I C A -- Register now to manage your mail!
http://www.topica.com/partner/tag02/register
==^================================================================

Reply via email to