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

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

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

Регистрация: Jun 2007
Сообщений: 18
По умолчанию URLLoader некорректно работает на IE

Здраствуйте!

После некоторых трудностей, сделал слайдшоу рисунки, который загружает картинки из сервера.

При воспроизведения слайдшоу флеш файл можут загрузить/отправить данные. Получить параметры картинки, отправить запрос про клика, и тд.
Все прекрасно работает на Firefox, Opera. Но на IE появляется проблемы, после первых-третых загрузок флеш вообще не загружает данные. Отправлять может.

На каждом секунду 2 раза загружаю данные через класс URLLoader(вырезка из кода):
Код:
var msgLoader:URLLoader;
var timer:Timer;

function setTimer() {
timer = new Timer(500);
timer.addEventListener("timer", loadMessages);
timer.start();
msgLoader = new URLLoader();
msgLoader.addEventListener(Event.COMPLETE, getMessages);
}

function loadMessages(event:TimerEvent):void {
request = new URLRequest("http://localhost/index.php");
msgLoader.load(request);
}
...
Жду ваших ответов.
Заранее благодарю.

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

Регистрация: Sep 2002
Сообщений: 30,787
А кто сказал, что за 500 мс данные успеют загрузиться? Там вообще полный хаос начнется…

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

Регистрация: Jun 2007
Сообщений: 18
__etc, пока на локальном серваке работает.
miramax, спасибо. Попробую.

Старый 11.07.2007, 07:08
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 4  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Надо таймер запускать в обработчике complete. Что бы только ПОСЛЕ предыдущей загрузки началась следующая.
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

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

Регистрация: Jun 2007
Сообщений: 18
Пробовал способ [b]miramax[b].
Но все равно не работает. Потом для теста так сделал.
Написал маленький скрипт, который при каждой обращении добавляет строка параметров к файл. Теперь можно узнать сколько обращения будет к скрипту.
Во флеше:
Потом обработчике COMPLETE(объект msgLoader:URLLoader) добавляю символ на TextField.

На флеше все работает. Он отправляет запрос на сервер и получает ничего. А РНР код только 3 строка добавляет к файлу. Как-то запросы флеш ролика на пути пропадает.

Старый 11.07.2007, 15:45
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 6  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Может проблема в кэшировании браузера?
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

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

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от miramax
Может проблема в кэшировании браузера?

Для избежания кэширования нужно или отправлять POST запросы или каждый раз изменять GET запрос. Функция noCache гарантирует уникальность строки запроса.
Код:
function loadSendMsg(event:TimerEvent):void {
	timer.stop();
	request = new URLRequest("http://localhost/SP/test/get.php?antiCache="+noCache());
	loader.load(request);
}

function noCache():String{
    var d:Date = new Date();
    return d.getHours()+'_'+d.getMinutes()+"_"+d.getSeconds()+"_"+Math.random();
}
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©


Последний раз редактировалось miramax; 11.07.2007 в 20:36.
Старый 12.07.2007, 12:15
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 8  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
я немного обгрейчу твою функцию - так быстрее и интереснее)
Цитата:
Сообщение от miramax
Код:
function noCache():String
{
    return new Date().getTime().toString();
}
рендом добавлять по вкусу, для посылки данных пойдет, а вот для добавления каких-то id шников в цикле нужно рендом.
__________________
33 коровы

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

Регистрация: Jun 2007
Сообщений: 18
Проблема не в кешировании. Проверил.

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

Регистрация: Jun 2007
Сообщений: 18
Еще один тест.

Просто создал ролик с таким кодом:
Код:
package {
	
	import flash.events.*;
	import flash.net.*;
	import flash.utils.*;
	import flash.display.MovieClip;
	import flash.text.*;
	
	public class URLLoaderTest extends MovieClip {
		
		var loader:URLLoader;
		var request:URLRequest;
		var timer:Timer;
		var variables:URLVariables;
		var text:TextField;
		
		public function URLLoaderTest() {
			text = new TextField();
			text.autoSize = TextFieldAutoSize.LEFT;
			text.border = true;
			addChild(text);
			
			text.appendText("start\n");
			variables = new URLVariables();
			
			timer = new Timer(500);
			timer.addEventListener("timer", loadSendMsg);
			
			timer.start();
			
			loader = new URLLoader();
			loader.addEventListener(Event.COMPLETE, loadComplete);
		}
		
		function loadComplete(event:Event):void {
			text.appendText("Msg loaded - " + String(loader.data) + "\n");
			timer.start();
		}
		
		function loadSendMsg(event:TimerEvent):void {
			timer.stop();
			request = new URLRequest("http://localhost/SP/test/get.php");
			loader.load(request);
		}
		
	}
	
}
РНР код(при обрашении просто добавит строка с текстом "getted"):
Код:
<?php
	$f = fopen("get.txt", "a");
	fwrite($f, "getted\n");
	fclose($f);
?>
Только первый вызов loader.load(request) обращает на сервер. В файле число строк - 1.

Если запустить этот ролик на Firefox и Opera проблем не будет.
IE шестая. На седмом не пробовал.
Странно.

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

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

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


 


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


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