[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как изменить кодировку при заносе в базу
baka
Здравствуйте, есть у меня скипт отправки комментариев на сайте (на аякс), но при отправке данных в базу, попадает кривая кодировка (нужна windows-1251). Как мне ее изменить? Пробовал iconv, данные отправляются, но страница не обновляется.



Спустя 11 минут, 17 секунд (27.08.2010 - 20:44) twin написал(а):
бросить заниматься ерундой и перейти на UTF-8

Спустя 8 минут, 4 секунды (27.08.2010 - 20:52) baka написал(а):
Но когда я все меняю на UTF-8, получаются ����� �����.

Спустя 2 минуты, 35 секунд (27.08.2010 - 20:54) twin написал(а):
Не всё значит.

Спустя 16 минут, 7 секунд (27.08.2010 - 21:11) baka написал(а):
Да повсюду поменял, всю структуру базы облазил. На страницах charset поменял.

Спустя 29 минут, 11 секунд (27.08.2010 - 21:40) twin написал(а):
А я говорю - не всё.

Спустя 24 минуты, 20 секунд (27.08.2010 - 22:04) FatCat написал(а):
Цитата (twin @ 27.08.2010 - 21:44)
бросить заниматься ерундой

Под этими словами я понимаю бросить париться с аяксом (жалкие потуги на ООП в js) и писать вызовы к серверу обычным процедурным джаваскриптом.
А кодировку предпочитаю винкириллицу, в ней и строковые функции всегда корректно работают, и размер базы процентов на 30 меньше, и поиск по базе не глючит, и вообще масса достоинств.

Делов-то: Отправляем через скрытый айфрейм на сервер, получаем ответ. Ответ уже сформирован так, чтобы parent в заданный объект методом innerHTML отдать все необходимое. На время ожидания ответа сервера в тот же объект тем же методом картинку крутящегося колесика кидаем. На вид от аякса не отличишь, а по сути получается пара десятков строк кода, надежность и быстродействие такие, что аякс нервно курит на задворках. И работает в какой хочешь кодировке, хоть в КОИ-8, если тебе так захочется.

Спустя 55 минут, 55 секунд (27.08.2010 - 23:00) baka написал(а):
Пробовал я всякие штуки с кодировками, да ничего не выходит. Пробовал даже в блокноте сохранять базу с кодировкой и импортировать.

В принципе мне и windows-1251 подходит, просто нужно чтобы данные русские нормально заносились.

Спустя 34 минуты, 52 секунды (27.08.2010 - 23:35) baka написал(а):
Все, проблему решил))) Перекодировал iconv не весь массив данных, а только поле текст и имя. И то только перед вносом в базу) После перекодировал назад)

$arr['name'] = iconv('UTF-8', 'windows-1251', $arr['name']);
$arr['body'] = iconv('UTF-8', 'windows-1251', $arr['body']);
/* Все в порядке, вставляем данные в базу: */
mysql_query(" INSERT INTO comments(name,email,post,body)
VALUES (
'"
.$arr['name']."',
'"
.$arr['email']."',
'"
.$arr['post']."',
'"
.$arr['body']."'
)"
);
$arr['name'] = iconv('windows-1251', 'UTF-8', $arr['name']);
$arr['body'] = iconv('windows-1251', 'UTF-8', $arr['body']);

Если кому интересно, можете посмотреть http://photoshopia.info

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.