К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

проблемы с кодировкой

Гость
0 - 23.04.2013 - 10:27
день добрый, вопрос не однократно обсуждался на множестве форумов про кодировки и у всех уже вызывает пену у рта когда кто-то создает такую тему вновь, но я все же рискну, так как сижу над бедой уже вторую неделю и до того как решиться создать тему, облазил не один форум
чем я пользуюсь: IIS 6.0, php 5, sql 5.1 (управляю с помощью dbforge)
ВЕЗДЕ стоит кодировка utf-8: базы sql в utf-8 лайкчаром даже выводил информацию

КОД:
character_set_client utf8
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir C:\Program Files\MySQL\MySQL Server 5.1\share\charsets\



в iis прописал в заголовках HTTP Content-type text/html; charset=utf-8

в самом сайте кодировку utf-8, да и сам сайт сохранил в кодировке utf -8

КОД:
mysql_query ("SET CHARACTER SET 'utf8'");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set character_set_database='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");



но проблема остается: должен производиться поиск по бд, если идет поиск по ангийским символам, то все на ура, иногда на ура и поиск по кириллице, НО зачастую происходит замена символов и почему так мне не понятно

ПРИМЕР: Я ищу Иванова в базе данных, но мне отображается что поиск по базе производится по слову Иваннв и соответственно ничего не находит
Сидоров заменяется на СШХнрнв
а вот например Бацаев абсолютно нормально воспринимается и выдает информацию какая есть в базе по данному человеку

Вроде все подробно описал, надеюсь поможете разобраться в этом нелегком для меня деле =)
зы: прошу не надо писать: поставь вместо форджа пхпмайадмин, вместо ииса апач и тому подобное, такой возможности просто нет, работаю с чем есть.



1 - 23.04.2013 - 13:51
Сам запрос к базе данных смотрели? Может в php меняется текст поиска? В php нужно локаль указывать - utf8

setlocale(LC_ALL,"utf-8");
mb_internal_encoding('UTF-8');

плюс в регулярных выражениях, если они используются, нужно использовать модификатор u.


К списку вопросов






Copyright ©, Все права защищены