Хостинг. И снова кодировки=)

baurens
10 років
0
Здравствуйте. Возникла такая проблема с кодировкой=) вся суть в том что с базы данных информация достается с правильной кодировкой, все файлы в UTF-8, в хедере content='text/html; charset=utf-8', при запросе к базе данных прописал
mysqli_query ($connection,"SET NAMES 'utf-8'");
mysqli_query ($connection,"SET CHARACTER SET 'utf8'");
mysqli_query ($connection,"SET SESSION collation_connection = 'utf8_general_ci'");
в htaccess
AddDefaultCharset UTF-8
CharsetSourceEnc UTF-8-
Но к примеру если перейти по такой ссылке sntables.php?view=addtables&group=Мышцы шеи, она превратится в sntables.php?view=addtables&group=Ð�Ñ�Ñ�Ñ�Ñ� Ñ�еи при этом в строке ввода все та же sntables.php?view=addtables&group=Мышцы шеи.
То есть кодировка меняется именно в процессе обработки запроса на сервере.
В настройках сайта кодировка так же UTF-8, и mbstring.internal_encoding:UTF-8
На локальном сервере все работает. Правда стоит апачи 2.4 и php 5.5
baurens
10 років
0
function sanitizeString($var){
$var=strip_tags($var);
$var=htmlentities($var);
$var=stripslashes($var);
return mysqli_real_escape_string(db_connect(), $var);
}
Все получаемые данные с методов пост и гет проходят через данную функцию, может ли она привести к данной ошибке?
baurens
10 років
1
Как показал маленький тест это именно ее рук дело, а если точнее $var=htmlentities($var);
rudenko
10 років
0
Для формирования ссылок с русским текстом необходимо использовать urlencode
Тема закрита.