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

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

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

Регистрация: Sep 2011
Сообщений: 366
По умолчанию Ошибка интерпретатора XML: элемент имеет неверный формат.

Создал запрос к хмл, но мне выдаётся постоянно ошибка :Ошибка интерпретатора XML: элемент имеет неверный формат.
Формат хмл имеет вид:
Код AS3:
<spisok>
<peoples></peoples>
<message></message>
</spisok>
Вроде норм делал по книге а почемуто не работает, подскажите в чём дело и как передать два массива данных.

Старый 04.09.2013, 23:10
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
XML Validator: "No errors found".
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 04.09.2013, 23:33
grafillo! вне форума Посмотреть профиль Отправить личное сообщение для grafillo! Найти все сообщения от grafillo!
  № 3  
Ответить с цитированием
grafillo!

Регистрация: Sep 2011
Сообщений: 366
Дело в том что создаю вручную такой XML и он на другом коде работает.
Может ошибка в скрипте?
Код AS3:
function senddata (vars:URLVariables ):void{
	var requestmes:URLRequest = new URLRequest;
	requestmes.url = "http://troll_ch/req.php";
	requestmes.method = URLRequestMethod.POST;
	requestmes.data = vars;
 
	var loader:URLLoader = new URLLoader();
	loader.dataFormat = URLLoaderDataFormat.TEXT;
	loader.addEventListener(Event.COMPLETE, loadmes);
 
	loader.load(requestmes);
 
	trace (vars);
	}
function loadmes (e:Event):void {
	var resp:XML = XML(e.target.data);
	//var postsList:XMLList = resp.spisok.peoples.pip;
	//var postsNum:uint = postsList.length();
	//trace ("posts"+postsNum);
}
Вот что приходит
Код:
<spisok><peoples time=1378319318></peoples><message></message></spisok>

Старый 04.09.2013, 23:44
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 4  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
loader.dataFormat = URLLoaderDataFormat.BINARY

Старый 05.09.2013, 00:00
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 5  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от Babylon Посмотреть сообщение
loader.dataFormat = URLLoaderDataFormat.BINARY
Странно слышать это от адепта XML. Как вы ByteArray сконвертите в XML с помощью
Код AS3:
var resp:XML = XML(e.target.data);
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 05.09.2013, 00:20
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 6  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
ByteArray(XML).uncompress();

Старый 05.09.2013, 00:36
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 7  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
okouser, вы правы. Текст
Код:
<spisok><peoples time=1378319318></peoples><message></message></spisok>
не матчится грамматикой XML
Код:
[10]   	AttValue	   ::=   	'"' ([^<&"] | Reference)* '"'
|  "'" ([^<&'] | Reference)* "'"
Проще говоря, атрибуты должны быть заключены в одинарные или двойные кавычки.

Но все же, чего-то я не понимаю в этой жизни. Судя по коду Starling, AssetManager 616 строка легко справляется с ByteArray, создавая полноценный XML с помощью
Код AS3:
new XML(bytes)
где
Код AS3:
trace(bytes is ByteArray); // true;
Однако официальная документация говорит об обратном.

Код:
XML() Конструктор
public function XML(value:Object)
value:Object — Любой объект, который можно преобразовать в формат XML с помощью функции верхнего уровня XML().
А функция верхнего уровня XML(), как я уже указывал, в качестве аргумента принимает только примитивы, XML и XMLList, но не ByteArray.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 05.09.2013, 00:53
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 8  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
			var s:String = "<data><unit name='cylon'><mana>96</mana></unit></data>";
			var b:ByteArray = new ByteArray();
			b.writeUTFBytes(s);
			var xml:XML = XML(b);
			trace(xml.toXMLString());
__________________
Reality.getBounds(this);

Старый 05.09.2013, 00:56
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 9  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Значит, они забыли обновить документацию. Вы же не будете спорить, что (data as ByteArray).uncompress() становится примитивом?

Упс, опоздал.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

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

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


 


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


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