Ted,
I'll put aside any dialog for the mo as to whether using frames is the best way to achieve your end result.
 
The only way of doing what you are attempting to do really involves so client side work as well.
 
lets say you have two frames LEFT and MAIN.
 
LEFT is a thin vertical navbar contains 2 options 'login' & 'help'. Clicking 'help' brings up a html doc in the MAIN frame. Clicking 'login' brings in an html login page.
 
A user comes along, selects 'login', enters their details and clicks SUBMIT.
 
The login form displaying CGI on the ACTION end of the form then validates the credentials and, if validate redirects to a 'logged in' page (which will obviously appear in the MAIN window (the CGI should also set a session cookie). This "logged in" page can then use a bit of simple javascript to force a refresh in the LEFT window. The causes the navbar CGI to look for a valid session cookie and, if present, to display the full nav bar rather.
 
regards
 
JOel
-----Original Message-----
From: Ted Markowitz [mailto:[EMAIL PROTECTED]]
Sent: 27 March 2002 20:04
To: [EMAIL PROTECTED]
Subject: Updating multiple frames in one CGI processing cycle

As I understand it, because of the single-request/single-response nature of the HTTP protocol and the way frames are treated as individual, separate pages, that there's no way to get results from a form in one frame, process it with a CGI script and the output a new page to both that frame AND another frame during the same processing cycle? Is that so? In other words, what I'd like to do is be able to change a navigation bar in one frame and also update the "main" frame with a new page at the same time.
 
An example: when logging in, I'd like to show a simple navbar in the left frame with just "Login" and "Help". Then based on successfully authenticating in the main frame using a form for username and password, I'd like to display a new page in that same main frame AND update the navbar in the left frame to add new command buttons available only to a logged-in user.
 
Any suggestions or pointers to examples would be much appreciated. I've started to look at doing this via tables without frames, but using frames seems like it would be much cleaner in principle.
 
Thanks.
 
--ted

Reply via email to