Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   ПОМОГИТЕ с КИРИЛИЦЕЙ (http://www.flasher.ru/forum/showthread.php?t=79220)

lemegeton 04.05.2006 12:53

ПОМОГИТЕ с КИРИЛИЦЕЙ
 
Всем привет. Я уже как-то пытался найти ответ на этот вопрос, но так ничего у меня и не получилось. Есть проблема и мне очень надо ее решить. В базе MySQL есть записи в кодировке cp1251_general_ci короче русскими буквами, я выбираю их при помощи php и передаю во флеш. Вот тут есть проблема, все записи отображаются как набор вопросиков. Что делать??? помогите пожалуйста.

etc 04.05.2006 13:05

Перегнать тем же php в utf-8
Пользуйтесь поиском.

lemegeton 04.05.2006 13:17

Тип ÐºÐ°Ð¼ÐµÑЂÑ‹ - вот такай байда получается тогда :(

Бармалей 04.05.2006 13:27

System.useCodepage = true; - попробуй.

etc 04.05.2006 13:30

Бармалей, это не является выходом из ситуации в большинстве случаев.
lemegeton, выводить в utf надо после того, как взял значение из базы. И ещё, каким образом ты передаёшь из php во флеш переменные?

lemegeton 04.05.2006 13:41

я использую amfphp gjkexftncz FlashRemoting юзаю, вызываю php-шну функцию она возвращает массив строк, далее во флеш в цикле обрабатываю строки и вывожу нужные. Я уже и useCodepage пробывал и в базе кодировку поля переделывал на utf8_general_ci... все равно фигня какая-то выводится

Бармалей 04.05.2006 13:43

>> Бармалей, это не является выходом из ситуации в большинстве случаев.

Согласен. Я тоже за повсеместное применение Юникода. Однако если у lemegeton-а не хватит знаний, чтобы грамотно перевести из Юникода в Win-1251 на сервере, то применение моего варианта может помочь в этом случае. =)

etc 04.05.2006 13:47

Цитата:

Сообщение от Бармалей
Однако если у lemegeton-а не хватит знаний, чтобы грамотно перевести из Юникода в Win-1251 на сервере, то применение моего варианта может помочь в этом случае. =)

Кажется, нужна обратная операция.

lemegeton 04.05.2006 14:00

если кодировку пол сделать utf8_unicode_ci а перед запросом на выборку посылать запрос SET CHARACTER SET cp1251, то получается вот что:
Òèï êàìåðû

aksios 04.05.2006 15:06

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

lemegeton 04.05.2006 15:30

если у тебя не возникает проблем в подобной ситуации, значит ты знаешь в чем я сделал ошибку... сама по себе в принципе схема простая - в базе данные я их выбираю с помощью пхп и передаю во флеш, так как это правильно организовать, что бы не было подобных проблем???

iNils 04.05.2006 15:48

Сказали же, что надо передавать данные в UTF-8.

lemegeton 04.05.2006 16:01

послушайте, а я что делаю:
//в php
SET CHARACTER SET utf8;
SELECT * FROM `table`;
//это если данные в поле с кодировкой cp1251_general_ci
или я не так что-то делаю, если да так подскажите мне пожалуйста

PhoenixX 04.05.2006 21:33

Передай в базу переменные из флеша русскими буквами, оно запишет в базе кряказябры но если вызвать эти переменные обратно то во флеше будет отображаться русский текст! проверено! т.е тебе надо написать сценарий, который будет из флеша отпралять переменные php-скрипту, который в свою очередь запишит их в базе. потом отослать из флеша запрос на получение переменных и считать их из php-файла. все очень просто и работает!

lemegeton 05.05.2006 18:16

:)) прикольно но не пожходит, поскольку база будет заполняться через веб интерфейс. Я вот только не пойму неужели никто не сталкивался с такой проблемой. А если сталкивался, что тяжело дать ответ исчерпывающий, что и как надо делать...Мне сказали что надо передавать символы в кодировки UTF8 я сделал поле в базе с кодировкой и utf8_general_ci и utf8_unicod_ci все равно не пашет!!!

Lacrimosa 05.05.2006 21:29

Ты шрифт менять пробовала?
У меня была такая проблемка, когда я пыталась воспользоваться шрифтами заложенными в программу.
Воспользуйся тем,что в ворде есть.
Мне помогло.
Не поможет, меняй версию Macromedia Flash на более новую.

lemegeton 06.05.2006 13:34

В смысле? я создаю текстовое поле во флеш
createTextField("textfield",...)
textfield.font="Arial";
textfield.text = ...

ты имеешь ввиду выставлять дргое значение textfield.font???

я проверял скрипт - он пишет в файл все нормально, а вот во флеш приходит уже хрень какая-то, т.е. коды символов, что приходят соответствуют именно тем символам, что приходят, значит, проблема не в отображении получается, а заранее приходит хрень...потому что если бы коды соответсвовали баквам кирилице, а отображалась ерунда, проблема была бы в отображении...

etc 06.05.2006 13:41

Цитата:

Сообщение от lemegeton
textfield.font="Arial";

Это неправильно. Нужно использовать как минимум TextFormat

lemegeton 06.05.2006 13:58

я точнее так и делаю...так уже запутался что не то написал
var format:TextFormat = new TextFormat();
format.font = "Arial";
format.color = 0xFFFFFF;
format.bold = true;
format.size = 11;
textfield.setTextFormat(format);

etc 06.05.2006 14:03

Код:

var format:TextFormat = new TextFormat();
format.font = "Arial";
format.color = 0xFFFFFF;
format.bold = true;
format.size = 11;
textfield.setNewTextFormat(format);

может поможет ;)

lemegeton 06.05.2006 14:13

все работает...фишка была в том что шлюз был настроен коряво по умолчанию...всем спасибо
PS Не доверяйте настройкам шлюзов ;)

mushi_mushi 23.06.2006 12:37

А флеш сам понимает, что данные в utf формате?..
Ему об этом нигде не надо говорить?
А то квакозябра получается какая-то при выводе...

etc 23.06.2006 13:39

Цитата:

Сообщение от mushi_mushi
А флеш сам понимает, что данные в utf формате?..

Если этому не препятствовать, то всё понимает.


Часовой пояс GMT +4, время: 21:26.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.