【问题标题】:PHP session_start();PHP session_start();
【发布时间】:2014-02-26 05:55:51
【问题描述】:

我正在尝试将 Sessions 与 PHP 一起使用,并在我的 index.php 开头使用 session_start(); 启动它们,但收到以下错误消息:

警告:session_start() [function.session-start]:无法发送会话 cookie - 已发送的标头(输出开始于 /home/ideal906/public_html/index.php:1) 在 /home/ideal906/public_html/index.php 在第 2 行

警告:session_start() [function.session-start]:无法发送会话 缓存限制器 - 标头已发送(输出开始于 /home/ideal906/public_html/index.php:1) 在 /home/ideal906/public_html/index.php 在第 2 行

这很奇怪,它是我网站的第一行:

<?php
    session_start();
?>

<!DOCTYPE html>
<html>
    <head>
<meta charset="utf-8" />
        <meta name="author" content="Pierre Anken">
        <meta name="description" content="Outil de création de menus équlibrés selon vos besoins">
        <!--[if lt IE 9]>
        <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->
        <script src="jquery.js"></script>
        <script src="scripts.js"></script>
        <link rel="stylesheet" href="style.css" />
        <title>Composez vos menus</title>
    </head>
    <body>
        <section id='sectionCentre'>
            <div id='presentation'>
                <h2>Ideal Menu</h2>

            </div>
        </section>
        <section id='bandeauHautDoite'>
            <nav>
                <ul>
                    <a href='#' elementMenu='monCompte' id='monCompte'>Mon compte</a><br/>
                    <a href='#' elementMenu='mesMenus' id='mesMenus'>Mes menus</a><br/>
                    <a href='#' elementMenu='mesRepas' id='mesRepas'>Mes repas</a><br/>
                    <a href='#' elementMenu='contact' id='contact'>Contact</a><br/>
                </ul>
            </nav>
        </section>
    </body>
</html>

【问题讨论】:

  • 你在某处有输出,否则标题不会被发送。你确定在开始 PHP 标记之前没有空格,并且除了这个之外没有其他文件被调用。
  • 尝试删除结束标签后的空格。
  • 是的,经过验证,没有空格,之前什么都没有。
  • 签入十六进制编辑器(或类似的)以查看您的
  • ^^^ 只是输入,请确保它没有以字节顺序标记保存。

标签: php session


【解决方案1】:

您有一个(不可见的)BOM(字节顺序标记),已由您的编辑器放置在文件的开头。它在session_start() 之前输出,因此您的页面无法更改 HTTP 标头。删除 BOM,问题就会消失。

【讨论】:

  • 十六进制的第一行:art(); 
  • 您在
  • 谢谢,工作正常 :) 有没有办法在未来避免这种情况?
  • 刚刚找到这个答案。很有帮助。 @K4trix,您可以通过在 NP++ 中设置 Encoding 来避免这种情况。从顶部菜单中:编码 >> 在没有 BOM 的 UTF-8 中编码
猜你喜欢
  • 1970-01-01
  • 2013-06-11
  • 2014-08-06
  • 2010-10-14
  • 2014-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-01
相关资源
最近更新 更多