Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.07.2009, 17:31
MedvedevA вне форума Посмотреть профиль Отправить личное сообщение для MedvedevA Найти все сообщения от MedvedevA
  № 1  
Ответить с цитированием
MedvedevA

Регистрация: Jul 2006
Сообщений: 54
По умолчанию Кодировка русского текста и передача его на сервер.

У меня в проекте передача массивов данных между флешкой и PHP происходит следующим образом:
Код AS3:
 
 <mx:HTTPService id="httpData" url="agents/a_paymentsXML.php" useProxy="false" method="POST" resultFormat="text" 	result="resultRequest(event)">     
</mx:HTTPService>

Фунция отправки данных из Flex(формируем массив и отправляем):
Код AS3:
private function saveData():void
{ 	
      httpData.request.output_converParams_array=new ArrayCollection(); 
      for(var j:int=0; j<output_data_table.dataProvider.length; j++){
httpData.request.output_converParams_array.addItem(output_data_table.dataProvider[j].converParams);
 
      }
      httpData.send(); // послать данные 
}
В PHP массив разбирается так:
PHP код:
$output_converParams_array=explode(",",$HTTP_POST_VARS["output_converParams_array"]); 
Столкнулся с такой проблемой, если в массиве появляется запитая тогда в PHP при разборе все разваливается.

Стал решать следующим образом сделал кодирование перед отправкой во флексе(encodeURI или escape):

Код AS3:
 
private function saveData():void
{ 	
          httpData.request.output_converParams_array=new ArrayCollection(); 
          for(var j:int=0; j<output_data_table.dataProvider.length; j++){   
  httpData.request.output_converParams_array.addItem(encodeURI(output_data_table.dataProvider[j].converParams));
         }
          httpData.send(); 
}
Когда на стороне PHP делаю раскодирование функциями rawurldecode или urldecode=> Не может раскодировать. Как справится с этой проблемой?

PHP код:
$output_converParams_array=explode(",",$HTTP_POST_VARS["output_converParams_array"]);
$log->write("w1=".rawurldecode($output_converParams_array[0]));//Выводит РІР°РІР°РІ
$log->write("w2=".urldecode($output_converParams_array[0]));//Выводит РІР°РІР°РІ 
Добавлено через 2 часа 55 минут
Люди помогите, как закодировать русский текст в Flex и раскодировать в PHP.
Кроме функции encodeURI или escape что-небудь ещё есть???? Какую-небудь наводку!

Старый 14.07.2009, 21:41
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А при чем тут русский язык?
во флеше вместо запятых в качестве разделителя используйте какой-нибудь другой редко встречающийся символ, а лучше - последовательность, например \u263А\u263А (2 смайла) - точно не ошибетесь.
__________________
Hell is the possibility of sanity

Старый 15.07.2009, 15:57
MedvedevA вне форума Посмотреть профиль Отправить личное сообщение для MedvedevA Найти все сообщения от MedvedevA
  № 3  
Ответить с цитированием
MedvedevA

Регистрация: Jul 2006
Сообщений: 54
Цитата:
Сообщение от wvxvw Посмотреть сообщение
А при чем тут русский язык?
во флеше вместо запятых в качестве разделителя используйте какой-нибудь другой редко встречающийся символ, а лучше - последовательность, например \u263А\u263А (2 смайла) - точно не ошибетесь.
Я пытаюсь сформировать строку с этим смайликом, но она обрезается почему-то:
Alert.show("w1"+String.fromCharCode("\u263А")+"w2",'Ошибка');//Выводит w1.
В чем дело?!!!

Добавлено через 54 минуты
Если я всталяю юникод редкого символа как разделитель тогда в PHP не передается коретно(квадратик вместо него приходит).
Может шрифт надо?!!!(пальцем в небо тыкаю).

Ну а если как разделитель передать hml-код смайлика ☺ тогда разбирается нормально.
Ну это код как то через жопу написанный..... Как все таки правильно передавать?


Последний раз редактировалось MedvedevA; 15.07.2009 в 16:52.
Старый 15.07.2009, 17:13
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А с чего вы решили, что Alert.show покажет вам этот символ, если вы шрифт для этого не встроили? :/
Как вы узнали, что пришел квадратик? По коду символа надо проверять - никто ж не знает, какой шрифт вы используете для того, чтобы результат распечатать...
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 11:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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