2014-09-04 67 views
0

我在我的文件中有发布者php get in index.php消息 Warning:session_start():无法发送会话缓存限制器 - 已经发送的头文件(输出开始于/ Users/[用户名在/Users/[username]/Sites/application/Core/session.php在线20class session Warning session_start()in php 5.4

<?php 
// A class to help work with Sessions 
// In our case, primarily to manage logging users in and out 

// Keep in mind when working with sessions that it is generally 
// inadvisable to store DB-related objects in sessions 


require_once('includes/initialize.php'); 

class Session{ 


    private $logged_in=false; 
    public $id; 


    function __construct() { 
     //@ob_start(); 
     session_start(); 
     $this->check_login(); 

     if($this->logged_in) { 

     }else{ 

     } 


    } 


    public function is_logged_in() { 
     return $this->logged_in; 
    } 

    public function login($username) { 
    // database should find user based on username/password 
     if($username){ 
      $this->id = $_SESSION['id'] = $username->id; 
      $this->logged_in = true; 
     } 
    } 


    public function logout() { 
     unset($_SESSION['id']); 
     unset($this->id); 
     $this->logged_in = false; 
    } 



    private function check_login() { 
     if(isset($_SESSION['id'])) { 
      $this->id = $_SESSION['id']; 
      $this->logged_in = true; 
     } else { 
      unset($this->id); 
      $this->logged_in = false; 
     } 
    } 
} 

$session = new Session(); 

?> 
+0

检查'/用户/ [用户名] /Sites/application/Core/users.php:3'它回应什么?即使是''以外的空白也被认为是输出 – bansi 2014-09-04 16:26:37

回答

1

session_start();具有] /Sites/application/Core/users.php:3)任何事情之前被调用。您需要将其从您的构造函数中取出并放在require_once声明之前。