PHP 警告:session_start():无法发送 session 缓存限制器 - headers 已发送,而 session_start 添加在顶部

PHP Warning: session_start(): Cannot send session cache limiter - headers already sentwhile the session_start is added at top

我正在使用 PHP 进行开发。但在登录时我收到错误 PHP 警告:session_start(): 无法发送 session 缓存限制器 - headers 已发送

这是我的 session 文件,已添加到页面顶部。

我的代码 - connection_config.php

<?php
session_start();
//ob_start();
//error_reporting(1);
$server ='localhost';          
$user ='**********';          
$password ='*********';              
$database = '**********';

define ('DB_HOST', $server);
define ('DB_USER', $user);
define ('DB_PASSWORD', $password);
define ('DB_NAME', $database);

function get_connection()
{ 
    $connection=mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);
    // Check connection
    if (mysqli_connect_errno())
    {
        echo 'Failed to connect to MySQL: ' . mysqli_connect_error();
    }else
    {
        return $connection; 
    }
}
?>

在mysql_function.php

<?php
require_once("connectin_config.php");

在function.php

<?php
require('mysql_functions.php');

在index.php

<?php
include('function/function.php');

login.php

<?php
include('function/function.php');
$mess='';

if(isset($_POST['submit'])){

record_set('get_data','SELECT * FROM `admin` WHERE  `email`="'.$_POST['email'].'" and password="'.md5($_POST['password']).'"' );
    if($totalRows_get_data){
    $row_get_data= mysqli_fetch_assoc($get_data);
        $mess='login Successfully'; 
        $_SESSION['admin_id']=$row_get_data['id'];
        $_SESSION['admin_phone']=$row_get_data['phone'];
        $_SESSION['admin_fname']=$row_get_data['fname'];
        $_SESSION['admin_lname']=$row_get_data['lname'];
        $_SESSION['user_type']=$row_get_data['user_type'];
        $_SESSION['admin_image']=$row_get_data['image'];
        $_SESSION['admin_cdate']=$row_get_data['cdate'];
        reDirect('index.php'); 
    }else{



        $mess='Username or Password Invalid';
    }

}
?>

我无法评论将所有 php 代码放在 <!DOCTYPE html> 之前或正文标签中!

确保 <? php tags 之间没有空格。包含文件的位置。

打开错误报告:

error_reporting(E_ALL);
ini_set('display_errors', 1);

如果您在本地主机上使用 wampserver,请检查 C:\wamp\logs\php_error.txt 中的 error_log 文件。

尝试测试 isset($_SESSION) 如果它已经存在则不要使用 session_start();

看起来你正在通过第二个会话从另一个文件开始尝试像这样:

if(!isset($_SESSION)){ 
   session_start(); 
}

先使用 session_start()