Ver Mensaje Individual
  #9 (permalink)  
Antiguo 10/02/2009, 15:56
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: setcookie y Header

Consultemos el manual.

Cita:
setcookie() defines a cookie to be sent along with the rest of the HTTP headers. Like other headers, cookies must be sent before any output from your script (this is a protocol restriction). This requires that you place calls to this function prior to any output, including <html> and <head> tags as well as any whitespace.
Queda claro entonces que usar setcookie es una manera simplificada de enviar un tipo más de headers al navegador.

Hace un par de meses se discutió ampliamente sobre header() y su interacción con el navegador. La conclusión a la que llegamos fue que hay dos procesos a tomar en cuenta cuando de cabeceras se trata. El hecho de usar header(), session_start(), setcookie(), etc. establece algunas cabeceras que tendrá nuestra página, mas no envía aún ningún contenido al navegador. Recién cuando se produce una salida, como un texto, o cuando se termina la ejecución del script, es que se produce el envío del paquete completo de cabeceras, y a partir de ese entonces ya no se pueden indicar más cabeceras.

En los mensajes de error, esto último es tratado como output (output started at C:\xampp\htdocs\maestrosva.php:9). Mientras no se produzca un output al navegador podemos seguir enviando, e incluso, reescribiendo cabeceras. Entiéndase por output, como ya dije, texto, impresiones, o simplemente el fin de ejecución del script.

Existe un poco de ambigüedad en estos conceptos.