我在我写的网站上的网页上一直收到此错误:session_start();.我得到的一个例子和错误如下。
<?php
include("header.php");
// The shopping cart needs sessions, so start one
session_start();
警告:session_start()[function.session-start]:无法发送会话缓存限制器 - 已发送的标头(输出从/home/content/c/a/s/cashme/html/buylooper/viewcart.php开始: 5)在第9行的/home/content/c/a/s/cashme/html/buylooper/viewcart.php中
我该如何解决这个问题?
答案 0 :(得分:3)
将session_start()
放在最顶层上的所有其他行之前:
<?php
session_start();
include("header.php");
另外,在发送标题之前,请不要echo
或print
或在屏幕上输出任何内容。
请确保您在包含文件中没有使用session_start()
两次,否则您将收到相同的消息。
答案 1 :(得分:0)
请确保在您的网页上包含session_start()
之前的任何内容,包括HTML。这应该可以解决您的问题。
答案 2 :(得分:0)
会话开始必须是看到/回显/打印/任何东西的第一件事。
<?php
session_start();
include("header.php");
会起作用,但即使是
<?php
session_start();
include("header.php");
(注意额外的空间)不会。
请参阅http://php.net/manual/en/function.session-start.php
如果您想在代码中使用HTML标记,那么这个地方也必须在它们之前。此外,如果您使用UTF-8,即使BOM可能有问题,所以如果这不能解决,那么也要检查它。