Get возвращает неверную кодировку от обработчика PHP
Проблема в следующем
Есть форма авторизации. При ошибке(неверный логин или пароль) обработчик возвращает ту самую ошибку( что конкретно не так) и возвращает в кракозябрах.
Все в UTF-8 (клиент, сервер, htaccess, meta charset, кодировка файлов UTF-8 without BOM, база данных тоже, хотя данные оттуда даже не ипользуються в ответе)
Перепробовал все в итоге приходит GET такой
?message=ÐевеÑнÑй%20паÑолÑ
Подскажите, что может быть? Причем проверяю кодировку через mb_detect_encode - везде пишет UTF-8
Код Функции
public function auth($post){
$data = $this->clearData($post);
$data['login'] = strtolower($data['login']);
$query="SELECT id, password, checked FROM users WHERE login = '$data[login]'";
$result = $this->db->query($query);
$result = $result->fetch_assoc();
if(!$result['password']) $str= "Профиль с таким логином не найден";
$data['password'] = md5($data['password']);
if($data['password']===$result['password']){
if(!$result['checked']) $str = "Профиль не подтвержден. Обратитесь к администратору.";
$_SESSION['user']['id'] = $result['id'];
setcookie('userId', $result[id], time()+2592000*12);
}
else $str = "Неверный пароль";
return $str;
}
Источник: Stack Overflow на русском