Il terzo errore è quando cerco di cambiare lingua:
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\sys\config\db.inc.php:1) in C:\xampp\htdocs\sys\class\class.addon.inc.php on line 133

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\sys\config\db.inc.php:1) in C:\xampp\htdocs\sys\class\class.addon.inc.php on line 140

Il codice della pagina class.addon.inc.php è :

<?php
class addon extends db_connect {


public function __construct($dbo=NULL)
{
parent::__construct($dbo);
}


/**
* Получить текущий рейтинг пользователя
*
* @param int $user_id ID пользователя
* @return int Текущий рейтинг пользователя
*/


public function GetRating($user_id)
{
$stmt = $this->db->prepare("SELECT rating FROM users WHERE id=(:id)");
$stmt->bindParam(":id", $user_id, PDO::PARAM_INT);
$stmt->execute();


$row = $stmt->fetch();


return $row['rating'];
}


/**
* Установить новый рейтинг пользователя
*
* @param int $user_id ID пользователя, которому нужно установить рейтинг
* @param int $rating Рейтинг пользователя
*/


public function SetRating($user_id, $rating)
{
$stmt = $this->db->prepare("UPDATE users SET rating=(:rating) WHERE id=(:id)");
$stmt->bindParam(":id", $user_id, PDO::PARAM_INT);
$stmt->bindParam(":rating", $rating, PDO::PARAM_INT);
$stmt->execute();
}


/**
* Получить текущий баланс пользователя
*
* @param int $user_id ID пользователя
* @return int Текущий баланс пользователя
*/


public function GetBalance($user_id)
{
$stmt = $this->db->prepare("SELECT balance FROM users WHERE id=(:id)");
$stmt->bindParam(":id", $user_id, PDO::PARAM_INT);
$stmt->execute();


$row = $stmt->fetch();


return $row['balance'];
}


/**
* Изменить баланс пользователя
*
* @param int $user_id ID пользователя
* @param int $new_balance новый баланс пользователя
*/


public function SetBalance($user_id, $new_balance)
{
$stmt = $this->db->prepare("UPDATE users SET balance=(:balance) WHERE id=(:id)");
$stmt->bindParam(":balance", $new_balance, PDO::PARAM_INT);
$stmt->bindParam(":id", $user_id, PDO::PARAM_INT);
$stmt->execute();
}


/**
* Получить ID пользователя
*
* @param string $user_login логин пользователя
* @return int ID пользователя
*/


public function GetUserId($user_login)
{
$stmt = $this->db->prepare("SELECT id FROM users WHERE login=(:login) LIMIT 1");
$stmt->bindParam(":login", $user_login, PDO::PARAM_STR);
$stmt->execute();


if ($stmt->rowCount() > 0)
{
$row = $stmt->fetch();
return $row['id'];
}
else
{
return 0;
}
}


public function GetAnswersCount($user_id)
{
$data = array("id" => $user_id);


$stmt = $this->db->prepare("SELECT answers_count FROM users WHERE id=(:id)");
$stmt->execute($data);


$row = $stmt->fetch();


return $row['answers_count'];
}


public function SetAnswersCount($user_id, $answers_count)
{
$data = array("id" => $user_id, "answers_count" => $answers_count);


$stmt = $this->db->prepare("UPDATE users SET answers_count=(:answers_count) WHERE id=(:id)");
$stmt->execute($data);
}


static function GetCurrentLang()
{
if (isset($_COOKIE['lang']))
{
return $lang = $_COOKIE['lang'];
}
else
{
return "ru";
}
}


static function SetCurrentLang($lang)
{
setcookie("lang",$lang,time()+14*24*3600,'/');
}


static function BackToRefPage()
{
if (!empty($_SERVER['HTTP_REFERER']))
{
header("Location: ".$_SERVER['HTTP_REFERER']);
}
else
{
header("Location: /");
}
}


static function timeAgo($time)
{
if (isset($_COOKIE["lang"]))
{
$lang = $_COOKIE["lang"];


switch($lang)
{
case "en":
{
$titles = array("minute","minutes","minutes");
$titles2 = array("hour","hours","hours");
$titles3 = array("day","days","days");
$titles4 = array("month","months","months");
$about = " ago";
$now = "less than a minute ago";
break;
}

case "de":
{
$titles = array("minute","Minuten","Minuten");
$titles2 = array("stunde","stunden","stunden");
$titles3 = array("tag","tage","tage");
$titles4 = array("month","months","months");
$about = " vor";
$now = "weniger als eine minute her";
break;
}

case "fr":
{
$titles = array("heure","heures","heures");
$titles2 = array("jour","jours","jours");
$titles3 = array("mois","mois","mois");
$titles4 = array("month","months","months");
$about = $sujet = " il ya";
$now = "moins d'une minute ago";
break;
}

case "sp":
{
$titles = array("minuto","minutos","minutos");
$titles2 = array("las horas","horas","las horas");
$titles3 = array("el día","días","días");
$titles4 = array("mes","meses","meses");
$about = " hace";
$now = "menos de un minuto atrás";
break;
}


case "ua":
{
$titles = array("хвилину","хвилини","хвилин");
$titles2 = array("година","години","годин");
$titles3 = array("день","дні","днів");
$titles4 = array("місяць","місяці","місяців");
$about = " тому";
$now = "Тільки що";
break;
}


case "ru":
{
$titles = array("минуту","минуты","минут");
$titles2 = array("час","часа","часов");
$titles3 = array("день","дня","дней");
$titles4 = array("месяц","месяца","місяців");
$about = " назад";
$now = "Только что";
break;
}


}
}
else
{
$titles = array("minute","minutes","minutes");
$titles2 = array("hour","hours","hours");
$titles3 = array("day","days","days");
$titles4 = array("month","months","months");
$about = " ago";
$now = "less than a minute ago";
}


$new_time = time();
$time = $new_time - $time;
if($time < 60) return $now; else
if($time < 3600) return addon::declOfNum(($time-($time%60))/60, $titles).$about; else
if($time < 86400) return addon::declOfNum(($time-($time%3600))/3600, $titles2).$about; else
if($time < 2073600) return addon::declOfNum(($time - ($time % 86400)) / 86400, $titles3).$about; else
if($time < 62208000) return addon::declOfNum(($time - ($time % 2073600)) / 2073600, $titles4).$about;
}


static function votesCount($votes)
{
if (isset($_COOKIE["lang"]))
{
$lang = $_COOKIE["lang"];


switch($lang)
{
case "en":
{
$titles = array("point","points","points");
break;
}

case "de":
{
$titles = array("punkt","punkte","punkte");
break;
}

case "fr":
{
$titles = array("point","points","points");
break;
}

case "sp":
{
$titles = array("punto","puntos","puntos");
break;
}


case "ua":
{
$titles = array("голос","голоса","голосів");
break;
}


case "ru":
{
$titles = array("голос","голоса","голосов");
break;
}


}
}
else
{
$titles = array("vote","votes","votes");
}


return addon::declOfNum($votes, $titles);
}


static function declOfNum($number, $titles)
{
$cases = array(2, 0, 1, 1, 1, 2);
return $number.' '.$titles[ ($number%100>4 && $number%100<20) ? 2 : $cases[($number%10<5) ? $number%10:5] ];
}


static function getUrl($text)
{
$matches = array();
//preg_match('/<iframe.*src=\"(.*)\".*><\/iframe>/isU', $text, $matches);

echo $text."<br><br>";
}


static function makeIframe($text)
{
$original = '<iframe title="sdf" src="http://vk.com/video_ext.php?oid=69637722&id=149983189&hash=6fdb3 b9d0af339a7&sd" width="300" height="170" frameborder="0"></iframe>'; // There was his mistake
//print "$original\n";
//print setHeightWidthSrc($original, 100, 100);


$matches = array();
preg_match('/<iframe.*src=\"(.*)\".*><\/iframe>/isU', $original, $matches);
//echo ($matches[0]); //only the <iframe ...></iframe> part
//echo ("<br><BR>".$matches[1]); //the src part. (http://www.youtube.com/embed/IIYeKGNNNf4?rel=0)
return "<iframe src=\"{$matches[1]}\" width=\"300\" height=\"170\" frameborder=\"0\"></iframe>";
}


static function makeClickableLinks($text)
{


$text = @eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
'<a rel="nofollow" target="_blank" href="/go/?url=\\1">\\1</a>', $text);
$text = @eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
'\\1<a rel="nofollow" target="_blank" href="/go?url=http://\\2">\\2</a>', $text);

return $text;
}
}


?>