Radicore Forum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » RADICORE development » Menu and Security » Multi-page Wizards
Multi-page Wizards [message #553] Mon, 22 January 2007 00:19 Go to next message
ljkbrost is currently offline  ljkbrost
Messages: 59
Registered: April 2006
Member
Does the menu system support multi-page wizards?

I have a 4 step process that would be greatly simplified by the menu system support this kind of action. Looking at the framework I can hack the std.*.inc files to be not_std.*.inc and get wizard navigation to work, but it's a hack and storing the intermediate state is a mess with session variables.

Any suggestions on implementing this and specifically store the 'temporary' page state until the final commit of the last wizard page?

Thanks,


Kyle Brost
----
Re: Multi-page Wizards [message #555 is a reply to message #553] Mon, 22 January 2007 05:56 Go to previous message
AJM is currently offline  AJM
Messages: 2368
Registered: April 2006
Location: Surrey, UK
Senior Member
I tend to avoid multi-page transactions that store intermediate data in memory, and not write anything to the database until the last page has been processed, for the simple reason that if anything fails before the final database update then all that user input is lost and has to be re-entered.

I prefer to write each completed page to the database with a status of 'PENDING' so that no data is ever lost. The status is not changed to 'CONFIRMED' until the last page is processed.

In this way it does not matter if the server crashes, their PC crashes, or the line goes down and drops the connection, no data (apart from fresh input on the current screen) will be lost.

You can either use a single database table with PENDING and CONFIRMED status, or use separate tables for the PENDING details.


Previous Topic: Access to "Home"
Next Topic: hiding control.inc database connection details
Goto Forum:
  


Current Time: Sat Nov 23 08:07:20 EST 2024

Total time taken to generate the page: 0.03577 seconds