Hi Watts.
Thanks for your feedback. I finally cracked it. I updated as per your 2 recommendations (although that didn't fix the problem of jumping pages 3 and 5).
The solution was to make changes in the html_modify_success sub as follows (set pagestatus to the same as current page). Not sure why but there is some circular thing going on and this seems to work:
###MULTIPAGE MOD: this keeps modify_success from displaying the page just entered and instead takes the user to the next appropriate page. Also displays a brief "please wait" message which I think is kinda cool.
if ($in{'PageStatus'} eq "1") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=2&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "2") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=3&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "3") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=3&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "4") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=4&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "5") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=5&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "6") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=6&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "7") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url&modify_form=1&PageStatus=7&ID=$in{'ID'}">
|;}
if ($in{'PageStatus'} eq "Done") {print qq|
<meta http-equiv = refresh content = "0; URL=$db_script_link_url">
|;}
print qq|
</head>
Your appreciatively,
AndyJ