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

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

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

Регистрация: Dec 2007
Сообщений: 6
По умолчанию Чтение XML с удаленного сайта.

День добрый.
Сам я в AS ничего не смыслю, поэтому обращаюсь к гуру за помощью

Нашел пример для создания динамической смены баннеров.
Т.е. Флешка читает XML файл и выводит связку КАДР + ЛИНК
Все работает замечательно, если баннеры и флешка на одном сайте, т.е.
bannerXML.load("banners.xml");
А вот если баннеры и XML размещаю на одном сайте, а флешку на другом, т.е. делаю
bannerXML.load("http://someurl.com/banners.xml");
то ничего не работает....

Уважаемые, подскажите, как решить эту проблему ?

Содержание AS

Код:
onClipEvent(load)
{
	/* banner_init */
	// loads a random banner from 
	// the bannerData object
	banner_init = function()
	{
		bannerData = bannerXML.firstChild.childNodes;
		bCnt = bannerData.length;		
		curBanner = Math.floor(bCnt*Math.random());
		banner_loadNext();
	}
	
	/* banner_loadNext */
	// loads a the next banner from 
	// the bannerData object
	banner_loadNext = function()
	{
		curBanner < (bCnt-1) ? curBanner++ : curBanner = 0;
		_blank.loadMovie(bannerData[curBanner].attributes.src);		
		
		// check to see if the banner has a link
		if(bannerData[curBanner].attributes.href != undefined)
		{
			_button.href= bannerData[curBanner].attributes.href;
			_button._visible = 1;
		}
		else
		{
			_button._visible = 0;
		}
		
		// check for a preferred target window
		if(bannerData[curBanner].attributes.window != undefined)
		{
			_button.window = bannerData[curBanner].attributes.window;
		}
		else
		{
			_button.window = "_self";
		}
		
		// check for banner specific timeout
		if(bannerData[curBanner].attributes.timeout != undefined)
		{
			timeout = bannerData[curBanner].attributes.timeout*1000;
		}
		else
		{
			timeout = bannerXML.firstChild.attributes.timeout*1000;
		}
		tStart = getTimer();
	}
	
	/* banner_ef */
	// timer function for banner loading
	banner_ef = function()
	{
			if(getTimer() >= timeout+tStart)
			{
				banner_loadNext();
			}
	}
	
	// setup the XML object
	bannerXML = new XML();
	bannerXML.ignoreWhite = true;
	bannerXML.load("banners.xml");
           //bannerXML.load("http://someurl.com/banners.xml");
	bannerXML.onLoad = banner_init;
}

onClipEvent(enterFrame)
{
	banner_ef ();
}
Содержание XML

Код:
<banners timeout="5">
	<banner src="http://URL.ru/1.gif" href="http://URL.ru/1.html" window="_blank" />
	<banner src="http://URL.ru/2.gif" href="http://URL.ru/2.html" window="_blank" />
	<banner src="http://URL.ru/3.gif" href="http://URL.ru/3.html" window="_blank" />
</banners>


Последний раз редактировалось maxptz; 07.12.2007 в 13:20.
Старый 07.12.2007, 13:26
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 2  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
копать в сторону crossdomain.xml
__________________
: M F N W :

Старый 07.12.2007, 14:00
maxptz вне форума Посмотреть профиль Отправить личное сообщение для maxptz Найти все сообщения от maxptz
  № 3  
Ответить с цитированием
maxptz

Регистрация: Dec 2007
Сообщений: 6
Цитата:
Сообщение от Fernando Costa
копать в сторону crossdomain.xml
а можно ли подробнее ?

Старый 07.12.2007, 14:25
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 4  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
F1 > Understanding Security > Server-side policy files for permitting access to data > Allowing cross-domain data loading
__________________
: M F N W :

Старый 07.12.2007, 15:38
maxptz вне форума Посмотреть профиль Отправить личное сообщение для maxptz Найти все сообщения от maxptz
  № 5  
Ответить с цитированием
maxptz

Регистрация: Dec 2007
Сообщений: 6
Разместил на сервере, где лежат картинки и XML этот файл crossdomain.xml

Пробовал так:

Код:
<?xml version="1.0" encoding="utf-8"?>
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
И так:

Код:
<?xml version="1.0" encoding="utf-8"?>
<cross-domain-policy>
<allow-access-from domain="server.gdeSWF.ru" /> 
</cross-domain-policy>
+ при компиляции SWF указал Access Network Only

лучше не стало...

Структура на сервере, где данные такая (все файлы в одно папке):

Код:
1.gif
2.gif
3.gif
banners.xml
crossdomain.xml
Цитата:
Сообщение от Fernando Costa
F1 > Understanding Security > Server-side policy files for permitting access to data > Allowing cross-domain data loading
вроде сделал все так как написано...


Последний раз редактировалось iNils; 07.12.2007 в 15:56.
Старый 07.12.2007, 15:58
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
maxptz, когда хотите что-то добавить, используйте кнопку и редактируйте последнее сообщение, а не создавайте несколько сообщений подряд.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 07.12.2007, 16:10
Fernando Costa вне форума Посмотреть профиль Отправить личное сообщение для Fernando Costa Найти все сообщения от Fernando Costa
  № 7  
Ответить с цитированием
Fernando Costa
 
Аватар для Fernando Costa

Регистрация: Oct 2006
Адрес: simferopol -> kyiv
Сообщений: 2,161
Отправить сообщение для Fernando Costa с помощью ICQ
а если еще почитать вот тут:

ActionScript classes > security (System.security) > loadPolicyFile (security.loadPolicyFile method)
__________________
: M F N W :

Старый 07.12.2007, 16:21
maxptz вне форума Посмотреть профиль Отправить личное сообщение для maxptz Найти все сообщения от maxptz
  № 8  
Ответить с цитированием
maxptz

Регистрация: Dec 2007
Сообщений: 6
Цитата:
Сообщение от Fernando Costa
а если еще почитать вот тут:

ActionScript classes > security (System.security) > loadPolicyFile (security.loadPolicyFile method)
Если бы у меня был математический склад ума

Почитал. но как применить в моем случае - не понимаю.
Need help.

Старый 07.12.2007, 19:39
telit вне форума Посмотреть профиль Отправить личное сообщение для telit Найти все сообщения от telit
  № 9  
Ответить с цитированием
telit
 
Аватар для telit

Регистрация: Jul 2007
Сообщений: 306
Во flash:
Код:
System.security.allowDomain("*");
в HTML:
Код:
<embed... allowScriptAccess="always"...

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

Регистрация: Sep 2002
Сообщений: 30,787
telit, вы проверяете свои слова или лишь бы ляпнуть очередную глупость?

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

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

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


 


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


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