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

baurens
8 років
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
8 років
0

function sanitizeString($var){
$var=strip_tags($var);
$var=htmlentities($var);
$var=stripslashes($var);
return mysqli_real_escape_string(db_connect(), $var);
}
Все получаемые данные с методов пост и гет проходят через данную функцию, может ли она привести к данной ошибке?

baurens
8 років
1

Как показал маленький тест это именно ее рук дело, а если точнее $var=htmlentities($var);

rudenko
8 років
0

Для формирования ссылок с русским текстом необходимо использовать urlencode

Тема закрита.