johne281 Posted July 29, 2009 Share Posted July 29, 2009 Hi guys. I am learning php and I am getting this error message while following a tutorial video. Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\vid\11\cookies.php:6) in C:\xampp\htdocs\vid\11\cookies.php on line 6 Here is the code <html> <head> <title>Cookies</title> </head> <body> <?php setcookie('test', 45, time()+(60*60*24*7)); ?> </body> </html> Quote Link to comment Share on other sites More sharing options...
o3d Posted July 29, 2009 Share Posted July 29, 2009 You need to set your cookie before the php script actually starts writing out to the browser (or client). e.g. <?PHP setcookie...() ?> <html> ... </html> Quote Link to comment Share on other sites More sharing options...
johne281 Posted July 29, 2009 Author Share Posted July 29, 2009 You are da bomb. In the video he put the php code inside the html. Do you know why it works for him and not for me? Quote Link to comment Share on other sites More sharing options...
o3d Posted July 29, 2009 Share Posted July 29, 2009 by default that should not work, except if php is setup to gather all information first (headers between body etc) before sending all to the browser (client) all together. Quote Link to comment Share on other sites More sharing options...
PFMaBiSmAd Posted July 29, 2009 Share Posted July 29, 2009 Because there is a setting that allows bad code that attempts to output content before headers to work. But because the setting isn't necessarily going to be enabled on any particular server, code should not be written that relies on it being on, especially in a tutorial that should be teaching best/correct programming practices. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.