0

在此处输入图像描述我检查了相关主题 session_start(); sry 找不到什么可以帮助我

  session_start();
  include "databaseregistration.php";
  include "check_function.php";
  session_check();  

check_function.php 包含(用于检查我哪里出错的简化代码)

   <?php
   function session_check(){
if(!isset($_SESSION['user_title'])){
echo "error";
    }
    else{
    echo "pass";
    }
    }?>

现在我得到的错误是

 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at F:\xampp\htdocs\ourwork\proper pages\homef.php:1) in F:\xampp\htdocs\ourwork\proper pages\homef.php on line 2

你可以看到我还没有发送任何标题,每当我删除 session_start(); 警告消失了

为什么它不在代码中时发送标头......这里需要帮助:(

4

4 回答 4

1

每个输出都会将标头发送到浏览器。输出几乎可以是所有内容,包括空格<?php最常见的错误是在 php 打开标记 ( )之前有一个空格、换行符或制表符。请确保session_start()在将任何内容发送到浏览器之前调用。

session_start()函数将向标题添加信息,以在用户浏览器中存储 cookie。在 cookie 中存储了会话 ID,以检索所需的信息。

于 2013-11-04T11:55:31.527 回答
0

感谢 GordonM 和 Oswald,我在记事本 ++ 中检查了“编码”,并将编码更改为没有 BOM 的 UTF,它解决了我的问题:)

于 2013-11-04T13:49:09.043 回答
0

的第 1 行有一些东西在输出F:\xampp\htdocs\ourwork\proper pages\homef.php

请注意,开头之前的空格和字节顺序标记<?php也被视为输出。

于 2013-11-04T11:56:31.203 回答
0

?>尝试从check_function.php文件中删除final 。这不是必需的,您可能会在其后不经意间有一个空格或换行符

?>如果有一个封闭的文件,PHP 会将文件结尾解释为结束<?php

于 2013-11-04T12:08:46.000 回答