[PHP] Re: setcookie problem: Cannot add header information - headers already sent by

2002-03-13 Thread Frank Ramsay

Cookies have to be set before the HTML block begins.

-fjr

Bob wrote:

 here is the example:
 
 ?php
 // Beginning php
 
 // Saving the page header in the variable $head.
 $head = ENDH
 !DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN
 html
   head
 titleFeedback form/title
   /head
 
   body bgcolor=white
 h1 align=centerFeedback form/h1
 ENDH;
 // End of page header
 
 // Saving the page footer in the variable $tail.
 $tail = ENDT
 hr
   /body
 /html
 ENDT;
 // End of page footer
 
 // Set up variables that will be saved in the cookies
 // Define unique cookie prefix
 $ID = My_ID;
 // Cookie lifetime in seconds (in this example, three days)
 $cookie_life = 60;
 // Name of cookie that holds the user's name
 $n_name = $ID . _Name;
 // Name of cookie that holds the user's email
 $n_email = $ID . _Email;
 // Name of cookie that holds the user's last login
 $n_last = $ID . _Last;
 
 // These lines print the form with user input and mails to the
 webmaster.
 if( isset($sfeedback)) {
 Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
 print $head;
 ?
 Thanks for your feedback, ?php echo $name ?. Here is what you
 said:br
 Name: ?php echo $name ?br
 Email: ?php echo $email ?br
 Feedback: ?php echo $feedback ?br
 ?php
 // Mails the feedback to the webmaster.
 $subject = Feedback from your site;
 $sendto = [EMAIL PROTECTED];
 $header = From: $email;
 mail($sendto, $subject, $feedback, $header);
 print Thank you.  Your comments have been sent to the
 webmaster\n;
 // Print end and leave
 print $tail;
 exit();
 }
 
 // This loop treats users who have not been to the site before.
 if(!$$n_last) {
 if( ! isset($name)) { // if no name - display the form
 echo $head;
 ?
 Welcome to our system! Please fill in the following information:
 !-- $PHP_SELF is the PHP way of referring to the current page --
 form action=?php echo $PHP_SELF ? method=POST
 Name: input type=text name=namebr
 Email: input type=text name=emailbr
 !-- Submit button --
 input type=submit value=Submit/form
 ?php
 echo $tail;
 exit;
 } else {
 // Set cookies and continue
 Setcookie($n_name,$name,time()+$cookie_life);
 Setcookie($n_email,$email,time()+$cookie_life);
 $$n_name = $name;
 $$n_email = $email;
 }
 }
 
 // This loop treats repeat users.
 Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
 echo $head;
 ?
 Welcome back to our system, ?php echo $$n_name ?.
 ?php
 // Have previous login
 if($$n_last)
 echo Your last login was on  . $$n_last . .;
 
 // User fills in feedback form
 ?
 form action=?php echo $PHP_SELF ? method=POST
 Name: input type=text name=name value=?php echo $$n_name
 ?br
 Email: input type=text name=email value=?php echo $$n_email
 ?br
 Feedback:br
 textarea name=feedback wrap=virtual cols=40 rows=5
 /textarea
 br
 !-- Submit button --
 input type=submit value=Submit name=sfeedback
 /form
 ?php echo $tail ?
 
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 75
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 76
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 83
 
 what' wrong?
 thanks!


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




RE: [PHP] Re: setcookie problem: Cannot add header information - headers already sent by

2002-03-13 Thread Rick Emery

He IS setting cookie before sending HTML block.  Note, that he is storing
the beginning of HTL block in a HEREDOC, which he prints after setting
cookie.

Somewhere, he may be printing a blank line prior to setting cookie...that
problem has bitten me more than once, so now I'm on the look-out for it in
my code.

Bob: after the page bombs-out with error message, do a view source on the
displayed web-page

-Original Message-
From: Frank Ramsay [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, March 13, 2002 7:17 AM
To: [EMAIL PROTECTED]
Subject: [PHP] Re: setcookie problem: Cannot add header information -
headers already sent by


Cookies have to be set before the HTML block begins.

-fjr

Bob wrote:

 here is the example:
 
 ?php
 // Beginning php
 
 // Saving the page header in the variable $head.
 $head = ENDH
 !DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN
 html
   head
 titleFeedback form/title
   /head
 
   body bgcolor=white
 h1 align=centerFeedback form/h1
 ENDH;
 // End of page header
 
 // Saving the page footer in the variable $tail.
 $tail = ENDT
 hr
   /body
 /html
 ENDT;
 // End of page footer
 
 // Set up variables that will be saved in the cookies
 // Define unique cookie prefix
 $ID = My_ID;
 // Cookie lifetime in seconds (in this example, three days)
 $cookie_life = 60;
 // Name of cookie that holds the user's name
 $n_name = $ID . _Name;
 // Name of cookie that holds the user's email
 $n_email = $ID . _Email;
 // Name of cookie that holds the user's last login
 $n_last = $ID . _Last;
 
 // These lines print the form with user input and mails to the
 webmaster.
 if( isset($sfeedback)) {
 Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
 print $head;
 ?
 Thanks for your feedback, ?php echo $name ?. Here is what you
 said:br
 Name: ?php echo $name ?br
 Email: ?php echo $email ?br
 Feedback: ?php echo $feedback ?br
 ?php
 // Mails the feedback to the webmaster.
 $subject = Feedback from your site;
 $sendto = [EMAIL PROTECTED];
 $header = From: $email;
 mail($sendto, $subject, $feedback, $header);
 print Thank you.  Your comments have been sent to the
 webmaster\n;
 // Print end and leave
 print $tail;
 exit();
 }
 
 // This loop treats users who have not been to the site before.
 if(!$$n_last) {
 if( ! isset($name)) { // if no name - display the form
 echo $head;
 ?
 Welcome to our system! Please fill in the following information:
 !-- $PHP_SELF is the PHP way of referring to the current page --
 form action=?php echo $PHP_SELF ? method=POST
 Name: input type=text name=namebr
 Email: input type=text name=emailbr
 !-- Submit button --
 input type=submit value=Submit/form
 ?php
 echo $tail;
 exit;
 } else {
 // Set cookies and continue
 Setcookie($n_name,$name,time()+$cookie_life);
 Setcookie($n_email,$email,time()+$cookie_life);
 $$n_name = $name;
 $$n_email = $email;
 }
 }
 
 // This loop treats repeat users.
 Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
 echo $head;
 ?
 Welcome back to our system, ?php echo $$n_name ?.
 ?php
 // Have previous login
 if($$n_last)
 echo Your last login was on  . $$n_last . .;
 
 // User fills in feedback form
 ?
 form action=?php echo $PHP_SELF ? method=POST
 Name: input type=text name=name value=?php echo $$n_name
 ?br
 Email: input type=text name=email value=?php echo $$n_email
 ?br
 Feedback:br
 textarea name=feedback wrap=virtual cols=40 rows=5
 /textarea
 br
 !-- Submit button --
 input type=submit value=Submit name=sfeedback
 /form
 ?php echo $tail ?
 
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 75
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 76
 
 Warning: Cannot add header information - headers already sent by
 (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
 C:\WebShare\wwwroot\last\cookie.php on line 83
 
 what' wrong?
 thanks!


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

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




[PHP] Re: setcookie problem: Cannot add header information - headers already sent by

2002-03-13 Thread qartis

I don't think you can have an empty line (even in the php) before cookies
are set


Frank Ramsay [EMAIL PROTECTED] wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
 Cookies have to be set before the HTML block begins.

 -fjr

 Bob wrote:

  here is the example:
 
  ?php
  // Beginning php
 
  // Saving the page header in the variable $head.
  $head = ENDH
  !DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN
  html
head
  titleFeedback form/title
/head
 
body bgcolor=white
  h1 align=centerFeedback form/h1
  ENDH;
  // End of page header
 
  // Saving the page footer in the variable $tail.
  $tail = ENDT
  hr
/body
  /html
  ENDT;
  // End of page footer
 
  // Set up variables that will be saved in the cookies
  // Define unique cookie prefix
  $ID = My_ID;
  // Cookie lifetime in seconds (in this example, three days)
  $cookie_life = 60;
  // Name of cookie that holds the user's name
  $n_name = $ID . _Name;
  // Name of cookie that holds the user's email
  $n_email = $ID . _Email;
  // Name of cookie that holds the user's last login
  $n_last = $ID . _Last;
 
  // These lines print the form with user input and mails to the
  webmaster.
  if( isset($sfeedback)) {
  Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
  print $head;
  ?
  Thanks for your feedback, ?php echo $name ?. Here is what you
  said:br
  Name: ?php echo $name ?br
  Email: ?php echo $email ?br
  Feedback: ?php echo $feedback ?br
  ?php
  // Mails the feedback to the webmaster.
  $subject = Feedback from your site;
  $sendto = [EMAIL PROTECTED];
  $header = From: $email;
  mail($sendto, $subject, $feedback, $header);
  print Thank you.  Your comments have been sent to the
  webmaster\n;
  // Print end and leave
  print $tail;
  exit();
  }
 
  // This loop treats users who have not been to the site before.
  if(!$$n_last) {
  if( ! isset($name)) { // if no name - display the form
  echo $head;
  ?
  Welcome to our system! Please fill in the following information:
  !-- $PHP_SELF is the PHP way of referring to the current page --
  form action=?php echo $PHP_SELF ? method=POST
  Name: input type=text name=namebr
  Email: input type=text name=emailbr
  !-- Submit button --
  input type=submit value=Submit/form
  ?php
  echo $tail;
  exit;
  } else {
  // Set cookies and continue
  Setcookie($n_name,$name,time()+$cookie_life);
  Setcookie($n_email,$email,time()+$cookie_life);
  $$n_name = $name;
  $$n_email = $email;
  }
  }
 
  // This loop treats repeat users.
  Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
  echo $head;
  ?
  Welcome back to our system, ?php echo $$n_name ?.
  ?php
  // Have previous login
  if($$n_last)
  echo Your last login was on  . $$n_last . .;
 
  // User fills in feedback form
  ?
  form action=?php echo $PHP_SELF ? method=POST
  Name: input type=text name=name value=?php echo $$n_name
  ?br
  Email: input type=text name=email value=?php echo $$n_email
  ?br
  Feedback:br
  textarea name=feedback wrap=virtual cols=40 rows=5
  /textarea
  br
  !-- Submit button --
  input type=submit value=Submit name=sfeedback
  /form
  ?php echo $tail ?
 
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 75
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 76
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 83
 
  what' wrong?
  thanks!




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




RE: [PHP] Re: setcookie problem: Cannot add header information - headers already sent by

2002-03-13 Thread SHEETS,JASON (Non-HP-Boise,ex1)

You can't send use setcookie after headers have been sent to the browser,
you can have white space in a php block because this is not sent to the
browser.  The exception is if you have output buffering enabled.


Jason

From: qartis [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, March 13, 2002 5:14 PM
To: [EMAIL PROTECTED]
Subject: [PHP] Re: setcookie problem: Cannot add header information -
headers already sent by


I don't think you can have an empty line (even in the php) before cookies
are set


Frank Ramsay [EMAIL PROTECTED] wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
 Cookies have to be set before the HTML block begins.

 -fjr

 Bob wrote:

  here is the example:
 
  ?php
  // Beginning php
 
  // Saving the page header in the variable $head.
  $head = ENDH
  !DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN
  html
head
  titleFeedback form/title
/head
 
body bgcolor=white
  h1 align=centerFeedback form/h1
  ENDH;
  // End of page header
 
  // Saving the page footer in the variable $tail.
  $tail = ENDT
  hr
/body
  /html
  ENDT;
  // End of page footer
 
  // Set up variables that will be saved in the cookies
  // Define unique cookie prefix
  $ID = My_ID;
  // Cookie lifetime in seconds (in this example, three days)
  $cookie_life = 60;
  // Name of cookie that holds the user's name
  $n_name = $ID . _Name;
  // Name of cookie that holds the user's email
  $n_email = $ID . _Email;
  // Name of cookie that holds the user's last login
  $n_last = $ID . _Last;
 
  // These lines print the form with user input and mails to the
  webmaster.
  if( isset($sfeedback)) {
  Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
  print $head;
  ?
  Thanks for your feedback, ?php echo $name ?. Here is what you
  said:br
  Name: ?php echo $name ?br
  Email: ?php echo $email ?br
  Feedback: ?php echo $feedback ?br
  ?php
  // Mails the feedback to the webmaster.
  $subject = Feedback from your site;
  $sendto = [EMAIL PROTECTED];
  $header = From: $email;
  mail($sendto, $subject, $feedback, $header);
  print Thank you.  Your comments have been sent to the
  webmaster\n;
  // Print end and leave
  print $tail;
  exit();
  }
 
  // This loop treats users who have not been to the site before.
  if(!$$n_last) {
  if( ! isset($name)) { // if no name - display the form
  echo $head;
  ?
  Welcome to our system! Please fill in the following information:
  !-- $PHP_SELF is the PHP way of referring to the current page --
  form action=?php echo $PHP_SELF ? method=POST
  Name: input type=text name=namebr
  Email: input type=text name=emailbr
  !-- Submit button --
  input type=submit value=Submit/form
  ?php
  echo $tail;
  exit;
  } else {
  // Set cookies and continue
  Setcookie($n_name,$name,time()+$cookie_life);
  Setcookie($n_email,$email,time()+$cookie_life);
  $$n_name = $name;
  $$n_email = $email;
  }
  }
 
  // This loop treats repeat users.
  Setcookie($n_last,Date(H:i d/m/Y),time()+$cookie_life);
  echo $head;
  ?
  Welcome back to our system, ?php echo $$n_name ?.
  ?php
  // Have previous login
  if($$n_last)
  echo Your last login was on  . $$n_last . .;
 
  // User fills in feedback form
  ?
  form action=?php echo $PHP_SELF ? method=POST
  Name: input type=text name=name value=?php echo $$n_name
  ?br
  Email: input type=text name=email value=?php echo $$n_email
  ?br
  Feedback:br
  textarea name=feedback wrap=virtual cols=40 rows=5
  /textarea
  br
  !-- Submit button --
  input type=submit value=Submit name=sfeedback
  /form
  ?php echo $tail ?
 
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 75
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 76
 
  Warning: Cannot add header information - headers already sent by
  (output started at C:\WebShare\wwwroot\last\cookie.php:59) in
  C:\WebShare\wwwroot\last\cookie.php on line 83
 
  what' wrong?
  thanks!




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

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