![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2005
Сообщений: 57
|
Цитата:
А то, что данные отрезаются по & - это точно. У меня сначала через ондату выводится неотпарсенная строка - там все есть, а когда через онлоад - тогда обрезается. Парсер onData написать врят-ли получится - во флешку через один объект грузятся данные для разных модулей - новостей, авторизации, и тд. С юникодом попробую. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
& = %26
|
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Да действительно flashvars работает по другому. Но можно так сделать
str = "p1=text&p2=sometext < b > bold < /b > next"; lv = new LoadVars (); xml1 = new XML(); xml1.parseXML(str) lv.decode (xml1.firstChild.nodeValue); trace (lv.p1); trace (lv.p2); ![]() тогда общая схема такая lv = new LoadVars ();
lv.load ("info.txt");
lv.onData = function (src) {
var xml1 = new XML ();
xml1.parseXML (src);
this.decode (xml1.firstChild.nodeValue);
this.onLoad ();
};
lv.onLoad = function () {
trace (this.p2);
};
p1=text&p2=sometext < b > bold < /b > next Последний раз редактировалось iNils; 03.05.2006 в 01:05. |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 57
|
Сделал в php-скрипте перед выводом новости $text=str_replace('&','%26',$text) - и все работает, спасибо!
У iNils идея интересная, но у меня не заработала: rec_lv.onData=function(src)
{
_root.debugger_mc.addText('LOADED:');
_root.debugger_mc.addText(src);
//this.decode(src);
var xml1 = new XML ();
xml1.parseXML (src);
this.decode (xml1.firstChild.nodeValue);
this.onLoad(true);
for(var i in this)
{
_root.debugger_mc.addText(i+' '+this[i]);
}
}
Цитата:
priv 4 uid 1 sid 114654297587685 act news onLoad [type Function] onData [type Function] Наверное не работает, тк текст новости содержит теги, которые мне не надо заменять, и хмл на них сбивается. |
|
|||||
|
ну ИМХО флэш любит и понимает данные, которые приходят, пропущенные через urlencode, в этом случае никаких проблем со спецсимволами не возникает
а вообще можно сохраняя данные записывать скажем в базу через функции кодирования, например base64_encode а обратно передавать через base64_decode |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
2 kvv: не понятно почему ты часть "<" и ">" заменяешь, а часть нет.
Если у тебя такой вид информации, то xml это лучшее что может быть. Весь код с тегами помещаешь в CDATA и не занимаешься головной болью с переводами. |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 57
|
Теги юзеров я заменяю - незачем им, допустим делать ссылки на asfunction. Но у них есть возможность bbcodes + сама новость оформляется тегами (<heading></heading> - а в css прописано описание тега).
А с xml, может и нужно было, но уже поздно - большую часть кода уже написал. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
1. Ты объясни почему например <he ading> не меняешь на <he ading>
2. Вчера массово все тупили, кроме ETC Он ведь по сути предложил использовать escape последовательность. Тебе надо просто все аргументы кодировать в нее и передавать. Смотри аттач.3. Правильную вещь никогда не поздно сделать. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Достаточно перевести только разделитель переменных (амперсанд) в escape-последовательность, чтобы флеш не думал, что это разделитель и правильно его декодировал...
А вообще, для таких целей лучше юзать xml с cdata и не заменять теги на подстановки... iNils, escape-последовательность -- это из другой оперы (из оперы ускорения набора некоторых однотипных конструкций кода) =) А escape это, по сути, urlencode. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Цитата:
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:24. |
|
|
« Предыдущая тема | Следующая тема » |
|
|