PHP包含数据库连接缓存限制警告


PHP include database connection - cache limiter warning

几天来,我一直在尝试使用所有在线解决方案来解决这个问题,但没有任何帮助。很明显,我错过了一个关键点,因为在localhost上它是有效的,但当我把它放到网上时,它就不起作用了。

错误:警告:session_start():无法发送会话缓存限制器-标头已在第3行的/home/public_html/domain/index.php中发送(输出开始于/home/ppublic_html/domain/index.php)

index.php

<?php
session_start();
include('functions/connect.php');
$page = htmlentities($_GET['page']);
include('functions/' . $page . '.func.php');
$pages = scandir('pages');
if (!empty($page) && in_array($_GET['page'] . '.php', $pages)) {
    $content = 'pages/' . $_GET['page'] . '.php';
} else {
    header('Location:index.php?page=register');
}
if (isset($_SESSION['uesername']) 
) {
    header("Location:index.php?page=member");
}
?>
<!DOCTYPE html>
<html>
    <head>
        <link href="css/mojcss.css" rel="stylesheet" type="text/css"/>
    </head>
    <body>
        <div id='content'>
<?php
include($content);
?>
        </div>
    </body>
</html>

connect.php

<?php
$link = @mysql_connect('localhost','myusername','mypass');  //or die('error');
if(!$link)
{
    $message="<strong><font color='red'>Error, try later.</font></strong><br /><br />";
    die($message.mysql_error());
}
$db = mysql_select_db('mydb'); //or die('unable to connect');
if(!$db)
{
    $message="<strong><font color='red'>Error, try later.</font></strong><br /><br />";
    die($message.mysql_error());
}
?>

检查服务器上是否有另一个已启动的会话阻止session_start()初始化。

Put session_start();在函数/connect.php的顶部,并确保代码中有一个session_start()。还要重新启动本地主机并从tmp目录中删除所有会话文件。

1.在session_start()语句之前写入ob_start(。

或如果解决方案一对您不起作用,请确保在session_start()语句之前没有向浏览器发送任何内容。如果在session_start()之前,甚至在标记之前存在空白或某些字符,就会发生这种情况。如果是这种情况,请删除空格或字符。它将解决"无法发送会话缓存限制器"的问题。或如果两种解决方案都没有任何区别,并且仍然存在相同的问题,请尝试从UTF-8设置编码。UTF-8编码在

之前添加一些字符
相关文章: