每当我打开页面时,我都会收到以下错误:
[2012 年 7 月 4 日 17:10:45] PHP 警告:无法修改标头信息 - 标头已由 (输出从/home/test/public_html/admin/header.php:39 开始) /home/test/public_html/admin/edAgent.php 在第 80 行
[2012 年 7 月 4 日 17:10:55] PHP 警告:无法修改标头信息 - 标头已由 (输出从/home/test/public_html/admin/header.php:39 开始) /home/test/public_html/admin/edAgent.php 在第 80 行
包括标头的代码段:
编码标头:
header('Content-Type: text/html; charset=utf-8');
登录重定向标头:
if(!isset($_SESSION["login"])OR $_SESSION["login"]!=1){
header('Location: login.php');
exit;
}
检查登录用户是否具有编辑权限:
if($level!='4') {
header('Location: acd.php?msg=1');
exit;
}
检查 ID 是否存在:
if ($nUsers==0) {
header('Location: acd.php?msg=2');
exit;
}
检查信息是否可编辑:
if($access != '4') {
header('Location: acd.php?msg=1');
exit;
}
如果你输出任何内容来筛选,那么标题将写入。因此,如果您打算在代码中使用header()
,则必须在输出任何内容之前执行此操作,或者在开始时使用 ob_start()
打开输出缓冲。
如果标头已经发送,则 JS 方法应该可以工作。
print '<script type="text/javascript">window.top.location.href = "'. $myurl .'";</script>';
在
页面开头和ob_end_flush();
页面末尾添加ob_start();
。尝试在函数中存储 header(),尽管在 header() 之后不应该有任何输出代码。
希望对你有帮助