Dane sesji PHP nie są przechowywane

Tworzę system logowania, ale gdy użytkownik się loguje, nie zapisuje żadnych danych, które chcę w sesji. Sprawdziłem nawet plik sesji i był pusty. Mam session_start (); na wszystkich stronach. co jeszcze mógłbym zrobić źle? Oto kod dwóch głównych stron.

kod logowania:

<?
if ($DEBUG == true) {
    error_reporting(E_ALL);
}
require "header.php";

require_once "dbinterface.php";
require_once "user.class.php";
require_once "config.inc.php";

$db = new db($DB['host'], $DB['user'], $DB['pass'], $DB['database']);

$u_result = $db->run("select user_id from users where user_name = '" . $db->escape($_POST['user_name']) . "'");

if ($u_result == false) {
    $url = 'Location: error.php?id=8';
    header($url);
}

if (count($u_result) < 1) {
    $url = 'Location: error.php?id=3';
    header($url);
}

$user = new user($u_result[0]['user_id']);

if ($user->match_password($_POST['pass']) == true) {
    $_SESSION['authenticated'] = true;
    $_SESSION['user_id'] = $u_result[0]['user_id'];
    $_SESSION['user'] = $user;
} else {
    $url = 'Location: error.php?id=4';
    header($url);
}
session_write_close();
header('Location: index.php');

?>

Nagłówek dołączany do każdej strony:

<?php
if (!session_start()) {
    $url = "Location: error.php?id=13";
    header($url);
}
?>

Małe tło:

Windows 7 (również wypróbowany w systemie Windowsserwer 2008, ale obecnie 7) PHPWystępuje 5 lokalnych problemów z hostowaniemdla wszystkich problem istnieje w ogóleprzeglądarki