Date:  03/12/2003 01:09:24 PM Msg ID:  001366
From:  FoxWeb Support Thread:  001362
Subject:  Re: CGI call problem
The error message you are getting indicates that your script(s) contain code that sends output to the browser before the call to Response.Redirect.  Output gets sent to the browser either via the Response.Write command, or regular HTML code outside merge tags.  The following scripts will both generate this error message:
 
<%
Response.Write('<html><body>')
Response.Redirect('/cgi-bin/myfile.cgi')
%>
 
<html><body>
<%
Response.Redirect('/cgi-bin/myfile.cgi')
%>
 
The offending code does not even have to be in the same script as the call to Response.Redirect.  For example, consider the situation where a user calls script1.fwx, which sends some output to the browser and then calls script2.fwx with Server.Execute, or Server.Transfer.  Since the two scripts are executed in the same request, by the time script2.fwx is executed some output has already has been sent to the browser, so you will get the above error if you attempt to call Response.Redirect.
 
The error will not be generated if buffering is set to True.

FoxWeb Support Team
support@foxweb.com email

Sent by Alan Harris-Reid on 03/11/2003 04:40:52 PM:
>>What you need in this case is an HTTP redirect, via the Response.Redirect method:
Response.Redirect('/cgi-bin/myFile.cgi')<<
 
I tried the above, but now I get the error message "Cannot redirect after output has been sent to the browser".  This is odd, because the redirect code occurs between %% tags before the <html> and <body> tags!
Any ideas how to get around this problem?
 
The redirect code only occurs once the form has been posted to itself (for posted data validation first).  Could this be anything to do with the problem?
 
Any help would be appreciated.
 
Alan