Solved

Enrollment Form Design Questions

Posted on 2011-09-27
5
370 Views
Last Modified: 2012-05-12
Hello Experts,

I have been asked to redo a enrollment application from an older employee who is no longer with the company. To make a long story short, the past employee created a webpage with 100 questions on it which are diveded by 9 different sections on the same page.

I have been asked to shorten the enrollment application into 9 different pages which are 9 different sections one section per page. This system is only going to collect data at the moment but may be used later down the road for updating the data. As of now the data will get imported into another system.

The questions I have are below which are stumping me from continuing :(

1. I need to make sure the enrollment application colllects the users personal information before continuing to other sections. This needs to be required because I need the unique generated ID to pass to the other sections tables in the DB.

2. How can I fill out the other sections after user has submitted his/her personal info going from page to page? I know that I need to store the unique ID into Session which I'm not sure if that's best practive these days or not. I welcome other ideas...

3. What is the best way to have the user fill out the other sections if they cannot continue in one sitting? Should I generate a random generated username/password for user to enter to pull up his/her unique ID to pass to other pages when they decide to contine the other pages (sections)?

I could really use help with this :( Need to give BOSS an answer tomorrow on how I can do this and then I need to start the process.

Requirements:

ASP.NET 4.0
C#
SQL SERVER 2005

Thanks in advance!!!
0
Comment
Question by:asp_net2
  • 2
  • 2
5 Comments
 
LVL 18

Expert Comment

by:Jerry Miller
ID: 36714235
1. I need to make sure the enrollment application colllects the users personal information before continuing to other sections. This needs to be required because I need the unique generated ID to pass to the other sections tables in the DB.

Put a 'Next' link at the bottom & / or top of each page with JavaScript validation on the required fields. In the onClick event of the button / link, add each page of info to the database. Then you can query it for the unique ID in a return visit. Another alternative to the JavaScript is to only enable the link after all of the required fields are completed.

2. How can I fill out the other sections after user has submitted his/her personal info going from page to page? I know that I need to store the unique ID into Session which I'm not sure if that's best practive these days or not. I welcome other ideas...

You can store the ID in a session variable as long as it doesn't include any sensitive data. But you can also store the ID in the database and retrieve it when necessary.

3. What is the best way to have the user fill out the other sections if they cannot continue in one sitting? Should I generate a random generated username/password for user to enter to pull up his/her unique ID to pass to other pages when they decide to contine the other pages (sections)?

You can have them create an ID on the first page and have them log in on subsequent visits. This way you can auto-complete any fields from the database that already exist. Use stored procedures as much as possible instead of hard coding queries. This gives you flexibility to make changes without re-compiling the website each time.
0
 
LVL 4

Author Comment

by:asp_net2
ID: 36714332
Hi jmiller1979,

First of all, thank you for replying. This means alot to me. I like all your suggestions and just have a few questions about them.

 - Which method do you prefer in Step 1 from your post and why?

Also for Step 1 are you suggesting that the user filling out the form start at Step1 - Step9 in that order only and that they cannot access another Step if they choose to without filling in the previous Steps? For the requiement I need the user filling out the form to choose whatever sections they wish to fill out as long as they first fill out the personal information first. I need to lock down all sections until personal information is completed and then unlock other sections.
0
 
LVL 26

Expert Comment

by:Anurag Thakur
ID: 36714415
I will try to be brief.
There is an existing application on which rework has to be done
To achieve the functionality I will use the same page and logic on the page but just change the UI design in such a way that I am using a wizard control in ASP.NET

In the first page of the wizard i will make it mandatory for the user to fill in the personal details and then only move forward and once that part is done the wizard starts and the user can continue forward using wizard and when he/she reaches on the last questionnaire page they can then submitt their responses
 
http://msdn.microsoft.com/en-us/library/fs0za4w6.aspx
0
 
LVL 4

Author Comment

by:asp_net2
ID: 36714433
@ragi007,

Not sure if that will work since I need data for each section to go into it's own table. I never worked with the wizard control because I always that that was a limitation in regards that all data you collect in the wizard control can only go into one table. Please me if I'm wrong along with links to show that is not true if it is so I can learn to use it like that.
0
 
LVL 18

Accepted Solution

by:
Jerry Miller earned 500 total points
ID: 36774686
I normally use the visible / invisible approach to buttons. Only make them show when it is an option. You can hide / unhide them in the code behind files instead of in JavaScript. Client side scripts like JavaScript are too easily circumvented or disabled to be useful for anything other than a user warning message. I use JavaScript to validate the proper fields, and methods in the code behind to do the real work.

Yes I would make them fill out the form in a logical 1-9 order. this ensures that they follow it and fill all necessary forms out. People would bounce all over the place and you would have a mess in your database. If they can fill out any section, I would make sure that they complete a section before continuing. This way you don't have to open the previous page on the return visit.

On return visits, I would give them a message box of the pages that they have yet to complete.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

828 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question