Re: Cookies & sessions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2010-01-21 at 08:43 +1100, clancy_1@xxxxxxxxxxxx wrote:

> On Wed, 20 Jan 2010 13:19:03 +0000, ash@xxxxxxxxxxxxxxxxxxxx (Ashley Sheridan) wrote:
> 
> >On Wed, 2010-01-20 at 15:45 +1100, clancy_1@xxxxxxxxxxxx wrote:
> >
> >> On Tue, 19 Jan 2010 22:45:14 -0500, phpster@xxxxxxxxx (Phpster) wrote:
> >> 
> >> >The first setcookie call is empty which produces the errors that cause  
> >> >the second cookie to fail.
> >> 
> >> I'm afraid not. I modified the program started to read:
> >> 
> >> <?php //;V;;;				Cypalda/Index.php   Printed: 21/3/09
> >> 
> >> session_start ();
> >> 
> >> setcookie ('Try_1', 'Works', time()+3600);
> >> echo '&nbsp;';
> >> setcookie ('Try_2', 'Doesnt', time()+3600);
> >> 
> >> With the result
> >> 
> >> Warning: Cannot modify header information - headers already sent by (output started at
> >> D:\Websites\cypalda.com\index.php:6) in D:\Websites\cypalda.com\index.php on line 7
> >> 
> >> And cookie 'Try_2' is not set.
> >> 
> >> I suspect you have been running with output buffering on, but I had left it in the default
> >> state, which is off.
> >> 
> >> 
> >
> >
> >Well the problem here is obvious, you just changed the line that was
> >causing the error to another line that causes another error! Why do you
> >need to echo a space character? Remove that line and you will get rid of
> >this new error.
> 
> When you are working with sessions, provided you start your program with session_id(), you
> can then do anything you like with session variables at any point in your program. In my
> original question I asked if there was a cookie equivalent. 
> 
> Someone said there was, but the above is simply demonstrating that their suggested
> solution doesn't work. It appears there is no solution, but that the workaround is to turn
> on output buffering, at least until you finish setting cookies, so that you can be certain
> that no output is generated before this point.
> 


Cookies behave very differently from sessions. With sessions, you can
modify and use the values immediately, but with cookies, the values you
save are only then usable the next time the browser sends them back with
the header request. This basically means that the cookie information is
only available to your scripts if it existed in the client-side cookie
when the user made the request for the page your script is on.

Thanks,
Ash
http://www.ashleysheridan.co.uk



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux