我有两个共享主机。 我的问题与调用 session_start() 有关。 在我的本地主机和我的共享主机之一。 session 启动与用户通知配合得很好:无法调用 header 。然后我曾经写过下面的代码:
<?php
if(! isset($_SESSION)){
session_start()
}
?>
但在另一台主机上,它仍然回显消息“注意:无法启动 session ()...” 还有我的问题,即 session 不会在第一次访问时开始。当我再次刷新我的浏览器窗口时,然后开始 session 。客户端和服务器端之间的关系是什么。我的 session_start() 又出了什么问题?请帮助我。
谁能告诉我调用永远不会失败的 session_start() 的正确方法是什么。我应该调用哪里。页面的最顶部或配置文件中的任何位置。一个小例子肯定会对我有所帮助。
最佳答案
两个简单的事情:
<强>1。随时调用session_start
无条件地。
<强>2。随时调用session_start
在页面上输出任何内容之前。
所以你应该这样做:
<?php
session_start();
// and now anything else
特别要注意,您可以通过许多不同的方式违反指令 #2,例如通过:
- 使用
echo
明确打印任何内容等 - 在
<?php
之前在您的 PHP 脚本中有任何字符标签 - 包括执行上述操作的其他脚本
有lots and lots of questions此处描述第 2 点及其解决方法。
关于php - 调用 session_start() 的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7455063/