On Wed, 15 May 2002, Olav Bringedal wrote:
> That is all well, but if php 4.2.1 interprets any
> output (as errors not only screen errors) as something
> that is sent before a header in a redirect, there is
> no other way (that i'm aware of) around it. 
> Like this:
> $user=$Session["user"];
> if(!$Authorized)
> {
>       header ("Location: http://jaggu.org";);
> }
> this will not work, you have to write:
> @$user=@$Session["user"];
> @if(@!$Authorized)
> {
>       header ("Location: http://jaggu.org";);
> }
> To actually get the redirect. 

That's not new to 4.2.1.

The solution remains the same as always: Choose between either:

A) Using output buffering; or

B) Make sure you don't generate any output before sending headers. You 
don't need to stick @ in front of everything, just eliminate all errors 
from your code and then make sure you aren't printing stuff.

For better or worse, there's no scapegoat here.


PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to