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

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

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

Регистрация: May 2006
Сообщений: 41
Отправить сообщение для writerer с помощью ICQ
По умолчанию думаю ошибка в использовании iconv

Добрый День.
Вот в чём проблема:
данные в базе хранятся в win1251, для передачи их во флеш использую пхп ремотинг, и проблема в том, что при передачи результата запроса во флеш вместо русского текста отображаются квадраты, использую:
PHP код:
$result mysql_query($sql);
while (
$of=mysql_fetch_array($result)) {
    
$of['streetName'] = iconv('CP1251','UTF-8'$of['streetName']);
}    
return 
$result
в качестве запроса обычный селект.
Тот же иконв использую при поиске улиц, то есть при передаче пхп функции значения из текстовог поля во флеш, в пхп делаю:
PHP код:
$streetName iconv('UTF-8','CP1251',$in['streetName']); 
и всё нормально ищет, то есть перекодировка происходит нормально.
Помогите, где кривость в первом куске ?!

Старый 23.10.2006, 19:19
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 2  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Из чего во что перекодируешь-то ?
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 24.10.2006, 11:07
writerer вне форума Посмотреть профиль Отправить личное сообщение для writerer Найти все сообщения от writerer
  № 3  
Ответить с цитированием
writerer

Регистрация: May 2006
Сообщений: 41
Отправить сообщение для writerer с помощью ICQ
ну как ? в базе в 1251 и перекодю их в утф чтоб во флеше нормально русский видно было, но его ен видно .... usecodepage = true писал в обоих случаях, то есть если перекодить или нет.
в другом случае наоборот

Старый 24.10.2006, 11:10
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Нужно убрать useCodepage.
Для начала проверьте, что на выходе из скрипта у вас utf-8 (в том числе и в HTTP заголовке), а уж потом со флешом разбирайтесь.


Последний раз редактировалось etc; 24.10.2006 в 11:14.
Старый 24.10.2006, 14:21
writerer вне форума Посмотреть профиль Отправить личное сообщение для writerer Найти все сообщения от writerer
  № 5  
Ответить с цитированием
writerer

Регистрация: May 2006
Сообщений: 41
Отправить сообщение для writerer с помощью ICQ
useCodepage убирал ... всё тоже думаю вот это криво:
PHP код:
$result mysql_query($sql); 
while (
$of=mysql_fetch_array($result)) { 
    
$of['streetName'] = iconv('CP1251','UTF-8'$of['streetName']); 
}     
return 
$result
поправтье меня ... пожалуйста

Старый 24.10.2006, 14:23
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
выведи в браузер результат выполнения, посмотри, что в header-е и вообще, какая реально кодировка.

Можешь попробовать проставить header("Content-Type: text/plain;charset=utf-8") (или как там у тебя)…

Старый 24.10.2006, 14:32
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 7  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
А можно не пробовать, а увидеть, что
а) на выходе - ресурс, хотя что там дальше, я не в курсе;
б) массив of содержит только одну запись;
в) в массиве of streetName и соответствующий ему числовой индекс могут и не совпадать (хотя что там используется дальше в свете а) я не знаю);
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 24.10.2006, 14:50
writerer вне форума Посмотреть профиль Отправить личное сообщение для writerer Найти все сообщения от writerer
  № 8  
Ответить с цитированием
writerer

Регистрация: May 2006
Сообщений: 41
Отправить сообщение для writerer с помощью ICQ
при кодировке страницы utf8 те же квадраты nxj и во флеше.
перефорулирую вопрос:
как перекодировать результат запроса ??

Старый 24.10.2006, 14:52
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 9  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Перекодировать-то иконвом. Вот только сначала внимательно прочитать и осознать, что я написал.
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 13.11.2006, 18:42
writerer вне форума Посмотреть профиль Отправить личное сообщение для writerer Найти все сообщения от writerer
  № 10  
Ответить с цитированием
writerer

Регистрация: May 2006
Сообщений: 41
Отправить сообщение для writerer с помощью ICQ
я опять к этой проблеме!
на пхп я делаю вот так
PHP код:
$stn = array();
while (
$of=mysql_fetch_array($resultt)) {
    
$sn iconv('CP1251','UTF-8'$of['streetName']);
    
    
$stn['$i']['streetName'] = $sn;
    
$result[] = $stn;
    
$i $i 1;
}
return 
$result
проблема в том что я не могу ничего, кроме как узнать размер сделать теперь во флеше с этим результатом.
Я использую flash remoting, и ранее, и когда возвращал во флеш сразу ответ работы запроса, то строка
dbMess.dataProvider = RecordSet(re.result);
всё отображала, теперь нет, не могу получить доступ в пришедшему объекту.


Последний раз редактировалось writerer; 13.11.2006 в 18:52.
Создать новую тему Ответ Часовой пояс GMT +4, время: 20:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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