如图所示,我收到以下警告消息,我认为这是由于添加了额外的会话变量(session_start),所以我想要的是我需要隐藏该警告。
实际上,如果我在开始时没有给出会话来获取用户会话,但如果没有给出会话,则没有设置会话,但是在添加时会发出警告。可能是什么问题?
代码:
<?php
session_start();
include("connect/config1.php");
?>
如图所示,我收到以下警告消息,我认为这是由于添加了额外的会话变量(session_start),所以我想要的是我需要隐藏该警告。
实际上,如果我在开始时没有给出会话来获取用户会话,但如果没有给出会话,则没有设置会话,但是在添加时会发出警告。可能是什么问题?
代码:
<?php
session_start();
include("connect/config1.php");
?>
您必须放置session_start()
在文档的开头。在此调用之前必须没有输出。
隐藏消息不会解决您的问题。
如果您只想隐藏警告:
<?php
ini_set('error_reporting', 0);
ini_set('display_errors', 0);
?>
查看您的 fullsearch.php,开头可能有一个空行(之前<?php
)。去掉它。
永远不要试图在开发环境中隐藏警告:它们在寻找错误方面非常有用。例如,如果没有这个特别的警告,您可能永远不会知道为什么实际上没有发送与会话相关的标头(换句话说,为什么会话不起作用)。
消除显示警告的原因。这个特殊的警告很可能是由在您可信赖的<?php
代码分隔符前面爬行的恶意空格引起的。这意味着服务器已经开始向客户端输出一些东西,但是您希望他们回到发送标头...
因此,请检查您的文件并确保在调用之前没有回显任何内容。这个讨论可能会很有帮助。)session_start()
更新:
实际上,您在问题中引用的代码非常清楚:
<?php
session_start();
include("connect/config1.php");
?>
看,<?php
这里前面是空格。这意味着服务器将实际发送这些符号(在 HTTP 响应正文中),然后才开始解析脚本本身。但随后它将被指示发送头球- 并因这个警告而犯规。
解决方案很简单:删除空格。这样不仅警告会消失,而且会话也将开始工作。)