可能重复:
PHP已发送的标头
所以我在我的页面上有这个输出..不明白为什么我弹出它.我是php的新手,所以也许这很容易解决
- 我有一个header.php文件,其中包含所有重要信息,以及页面的横幅.这个header.php包含在每个页面上.
- 我让它检查会话值,以确保允许用户在某个页面.如果不允许用户在那里,我会将他们踢回登录页面
这是错误出现的地方.这就是我所拥有的:
include_once ("header.php");
if ($_SESSION['uid']!='programmer')
{
header('Location: index.php');
echo 'you cannot be here';
exit;
}
Run Code Online (Sandbox Code Playgroud)
它重定向到的索引也有标题.那么这些多个标题引用会给我这个错误吗?我认为没有其他方法可以做到这一点,这让我疯了!
cee*_*yoz 32
header()一旦将文本输出到浏览器,就无法使用.由于您的header.php包含可能输出HTML,header()因此无法使用.
您可以通过以下几种方式解决此问题:
header.php设置了uid会话和其他重要内容).ob_start()在脚本顶部调用以缓冲输出.发送任何其他内容后,您无法发送任何标头.很可能是罪魁祸首是?>header.php中结束标记后的额外空格.在任何仅限脚本的php文件中完全省略结束标记通常是一种很好的做法.
您的错误应该告诉您发送输出的确切行(以及哪个文件).
| 归档时间: |
|
| 查看次数: |
65038 次 |
| 最近记录: |