I can't setcookie "headers already sent"
Possible Duplicate:
“Warning: Cannot modify header information - headers already sent by” error
setcookie, Cannot modify header information - headers already sent
I have this code to set cookie :
if (!isset($_COOKIE["CorkIU"])) {
setcookie("CorkIU", 2dd2ee3aUgsvoRye, time()+60*60*24*365, "/");
}
I have added this code in layout.php file
The first lines from layout.php file is
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?
include ("inc/css.php");
if (!isset($_COOKIE["CorkIU"])) {
setcookie("CorkIU", 2dd2ee3aUgsvoRye, time()+60*60*24*365, "/");
}
?>
<head>
<title>Welcome To Example</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<link href="style/default.css" rel="stylesheet" type="text/css">
</head>
and here is the error :
Warning: Cannot modify header information - headers already sent by (output started at /home/ex/public_html/template/layout.php:4) in /home/ex/public_html/template/layout.php on line 8
The error tells you everything you need to know:
headers already sent by (output
Move the call to setcookie
to before you output any content (which you do here: <!DOCTYPE html
)
From the PHP manual :
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 and tags as well as any whitespace.
链接地址: http://www.djcxy.com/p/34690.html上一篇: 标题已发送错误
下一篇: 我不能setcookie“头已经发送”