我对session_start和header有误

时间:2015-02-19 19:17:26

标签: php mysql session

我在我的网站上收到了一些错误消息:

  

警告:session_start():无法发送会话cookie - 已在第3行的/home/buklau/public_html/header.php中发送的输出(/home/vend/public_html/header.php:1中的输出)<登记/>   警告:session_start():无法发送会话缓存限制器 - 已在第3行的/home/buklau/public_html/header.php中发送的标头(输出在/home/vend/public_html/header.php:1处开始)
  警告:无法修改标题信息 - 已在第36行/home/buklau/public_html/includes/user.php中发送的标题(由/home/vend/public_html/header.php:1开始输出)

这是代码header.php

<?php

session_start();

require("./includes/config.inc.php");
require("./includes/user.php");

$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];

$user = new user($db);

//If login attempt else check login session
$checkLogin = $user->valid_login();

//user info var
$user_info = $user->user_info;

?>
<!DOCTYPE html>

和user.php:

<?php
//User info class

class user {

private $db;

public $user_info;

public $login_error;

private $valid = false;

public $user_type = PER_USER;


//Set DB
public function __construct($db=false){
    if(!$db){
        $db = Database::obtain(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE);
        $db->debug = SHOW_SQL_ERROR;
        $db->connect();
    }
    $this->db = $db;
}

//Check valid login and if login in or returning
public function valid_login(){

    if(isset($_POST["btnLogin"])) $this->login();
    else $this->check_session();

    //Unset all session and cookies if not calid
    if(!$this->valid) {
        foreach($_SESSION as $key => $val) $_SESSION[$key] = '';    
        foreach($_COOKIE as $key => $val) setcookie($key, '', time()-3600, "");             
        session_unset();
        session_destroy();
    }

0 个答案:

没有答案