Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   На лок. компе все работает, а после загрузки на сервер дает ошибку Error #204 (http://www.flasher.ru/forum/showthread.php?t=140039)

Эльвира 18.05.2010 17:06

На лок. компе все работает, а после загрузки на сервер дает ошибку Error #204
 
Подскажите, пожалуйста... На лок. компе все работает, а после загрузки на сервер дает ошибку по 2 загружаемым файлам "Error #2044: Необработанный ioError:. text=Error #2036: Загрузка не завершена. URL: menschen.swf". Что сие значит? Не знаю, что делать. подскажите..

proxiServer 18.05.2010 17:41

Проблема с загрузкой внешних данных, очевидно. Как грузите? Давайте код.

Эльвира 18.05.2010 17:45

Мой код
Код AS3:

import flash.display.*;
import flash.net.URLRequest;
import flash.events.*;
 
main.addEventListener(Event.COMPLETE, InLis);
msg.text= "Wird gelagen";
main.load (new URLRequest ("slide.swf"));
addChild(main);
 
function InLis (e:Event):void {
        /*main1.content.x=180;
        main1.content.y=0;
        main1.content.width=600;
        main1.content.height=600;*/

}
slide_btn.addEventListener(MouseEvent.CLICK, show_slide);
hochzeit_btn.addEventListener(MouseEvent.CLICK, show_hochzeit);
menschen_btn.addEventListener(MouseEvent.CLICK, show_menschen);
firmen_btn.addEventListener(MouseEvent.CLICK, show_firmen);
reportage_btn.addEventListener(MouseEvent.CLICK, show_reportage);
shop_btn.addEventListener(MouseEvent.CLICK, show_shop);
profil_btn.addEventListener(MouseEvent.CLICK, show_profil);
mail_btn.addEventListener(MouseEvent.CLICK, show_mail);
 
logo_btn.addEventListener(MouseEvent.CLICK, show_slide);
 
function show_hochzeit (e:MouseEvent):void {
msg.text= "Wird gelagen";
 
main.load (new URLRequest ("hochzeit.swf"));
 
 
}
function show_menschen (e:MouseEvent):void {
msg.text= "Wird gelagen";
main.load (new URLRequest ("menschen.swf"));
 
 
 
}
 
function show_firmen (e:MouseEvent):void {
msg.text= "Wird gelagen";
main.load (new URLRequest ("firmen.swf"));
 
 
 
}

Добавлено через 32 секунды
Не судите строго. Я только учусь)

orcpochta 18.05.2010 17:47

ой-ой! сейчас ругаться будут за неоформленный код)))

Эльвира 18.05.2010 17:51

А как оформлять? я и так вставила [as3]

Добавлено через 1 минуту
ой, боюсь...

orcpochta 18.05.2010 17:53

Цитата:

Сообщение от Эльвира (Сообщение 909107)
А как оформлять? я и так вставила [as3]

у вас в закрывающем теге левая скобка пропущена

Эльвира 18.05.2010 17:56

Спасибо! Спасли)

proxiServer 18.05.2010 18:05

Эльвира, вам нужно изучить тему загрузки получше. Вы забыли сделать ключевую вещь. Повесить событие на окончание загрузки. У вас изначально не верная модель. Сначала надо загрузить. Потом активировать кнопки.

На лоадер нужно повесить событие event.COMLETE и в его обработчике уже активировать кнопки.

Эльвира 18.05.2010 18:14

Я правильно поняла, что надо в тело функции события event.COMPLETE записать код прослушивания кнопок? А какое событие я должна "повесить" на окончание загрузки?

Добавлено через 3 часа 41 минуту
Но ведь это кнопки основного файла, а не загружаемого? Пожалуйста, подскажите хотя бы алгоритм, схему... Сайт простой.. а все никак... я читаю, конечно, но это моя первая работа, все сразу не поймешь.

proxiServer 19.05.2010 10:02

Цитата:

Я правильно поняла, что надо в тело функции события event.COMPLETE записать код прослушивания кнопок?
Да.

Я сначала подумал, что у вас код в классах. Поэтому не увидел, что вы в верхней части вешаете обработчик.

Вот это:
Код AS3:

slide_btn.addEventListener(MouseEvent.CLICK, show_slide);
hochzeit_btn.addEventListener(MouseEvent.CLICK, show_hochzeit);
menschen_btn.addEventListener(MouseEvent.CLICK, show_menschen);
firmen_btn.addEventListener(MouseEvent.CLICK, show_firmen);
reportage_btn.addEventListener(MouseEvent.CLICK, show_reportage);
shop_btn.addEventListener(MouseEvent.CLICK, show_shop);
profil_btn.addEventListener(MouseEvent.CLICK, show_profil);
mail_btn.addEventListener(MouseEvent.CLICK, show_mail);
 
logo_btn.addEventListener(MouseEvent.CLICK, show_slide);

перенесите в функцию InLis.

Нужно сначала все загрузить, а потом уже что-то делать.

Эльвира 19.05.2010 13:48

Попытаюсь объяснить, что я хочу сделать. Простая задача-есть главный файл свф. с навигационными кнопками. *_btn. в главном файле есть ULloader. туда хочу грузить разные программки swf, в зависимости от нажатой кнопки. Slide_show грузится великолепно, Hochyeit.swf тоже. Все работает, кроме Firmen.swf и Menschen.swf(( На локальной машине все работает Однако. сервер дает ошибку "Error #2044: Необработанный ioError:. text=Error #2036: Загрузка не завершена. URL: menschen.swf"(( .. даже после подсказанных Вами изменений. Вот мой код
Код AS3:

 
import flash.display.*;
import flash.net.URLRequest;
import flash.events.*;
 
 
 
msg.text= "Wird geladen";
main.load (new URLRequest ("slide.swf"));
 
main.addEventListener(Event.COMPLETE, cld);
 
function cld (e:Event):void {
        slide_btn.addEventListener(MouseEvent.CLICK, show_slide);
hochzeit_btn.addEventListener(MouseEvent.CLICK, show_hochzeit);
menschen_btn.addEventListener(MouseEvent.CLICK, show_menschen);
firmen_btn.addEventListener(MouseEvent.CLICK, show_firmen);
reportage_btn.addEventListener(MouseEvent.CLICK, show_reportage);
shop_btn.addEventListener(MouseEvent.CLICK, show_shop);
profil_btn.addEventListener(MouseEvent.CLICK, show_profil);
mail_btn.addEventListener(MouseEvent.CLICK, show_mail);
logo_btn.addEventListener(MouseEvent.CLICK, show_slide);
 
        addChild(main);
}
 
 
function show_hochzeit (e:MouseEvent):void {
msg.text= "Wird geladen";
 
main.load (new URLRequest ("hochzeit.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
}
function show_menschen (e:MouseEvent):void {
msg.text= "Wird geladen";
main.load (new URLRequest ("menschen.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
 
}
 
function show_firmen (e:MouseEvent):void {
msg.text= "Wird geladen";
main.load (new URLRequest ("firmen.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
 
}
 
function show_reportage (e:MouseEvent):void {
msg.text= "Seite in Arbeit...Bitte Taste drücken";
main.load (new URLRequest ("profil.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
}
 
function show_profil (e:MouseEvent):void {
msg.text= "Seite in Arbeit...Bitte Taste drücken";
main.load (new URLRequest ("profil.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
}
 
function show_shop (e:MouseEvent):void {
msg.text= "Seite in Arbeit...Bitte Taste drücken";
main.load (new URLRequest ("profil.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
}
 
function show_mail (e:MouseEvent):void {
msg.text= "Wird geladen";
navigateToURL( new URLRequest( "mailto:foto@maedl.at?subject=Anfrage" ));
 
}
 
function show_slide (e:MouseEvent):void {
msg.text= "Wird geladen";
main.load (new URLRequest ("slide.swf"));
main.addEventListener(Event.COMPLETE, cld);
 
}


Подскажите , пожалуйста, что не так, чего мне не хватает... Я читала про загрузку.. написала, все что поняла... для первого раза сложновато разобраться.
Спасибо за понимание и жду вашего ответа с большим нетерпением))

Добавлено через 8 минут
забыла ссылку написать http://test.maedl.at/

-De- 19.05.2010 14:07

Линукс-сервера чтят регистр букв. Венда - нет.
http://test.maedl.at/menschen.swf = 404 not found
http://test.maedl.at/Menschen.swf = 200 OK
Олсо, если вы лоадером грузите одну флэшку и пока она не догрузилась дёргаете у того же лоадера лоад для загрузки другой, то т.к. первая-то не догрузилась, то вывалится ошибка (мож вам вариант и начхать на неё).

proxiServer 19.05.2010 14:08

Ну, все верно. Вы попробуйте представить, как работает ваша программа. По шагам.

Вот вы говорите грузись:
Цитата:

main.load (new URLRequest ("slide.swf"));
Программа начинает загружать клип. Далее вы говорите программе ждать, пока не загрузится вот этой строчкой

Код AS3:

main.addEventListener(Event.COMPLETE, cld);

Программа вас поняла и после загрузки вызвала функцию cld()

В общем все здорово. Вот так и надо загружать все остальные клипы. Начинаем загрузку и ждем когда загрузится. Только после работаем с клипом. А вы начинаете работать с клипами до того, как они загрузились.

Цитата:

Подскажите , пожалуйста, что не так, чего мне не хватает...
Я вообще не до конца понимаю что вы хотите сделать. Попробуйте разобраться и начните задавать конкретные вопросы.

Что не так? - Программа с ошибкой.
Что вам не хватает? - знаний в предметной области.

=) давайте конкретнее.

Эльвира 19.05.2010 14:34

Спасибо за ответ)). Совет учиться , учиться и учиться..очень полезный ) Вы говорите, что я пишу все правильно. Но сервер выдает ошибку. Потому мой конкретный вопрос- Где ошибка в программе? Все о чем прочитала-написала..Какого кода не хватает в программе, чтобы сервер не жаловался. а работал так , как я хочу? Вот мои конкретные вопросы. Вот сайт http://test.maedl.at
Просто, я думала, что здесь помогают..

Добавлено через 1 минуту
Спасибо, -DE-, буквы поменяла. но по-прежнему не работает(

Добавлено через 5 минут
Я не понимаю... ведь все остальное работает. Я имею ввиду все остальные кнопки. Грузится все очень мило, за исключением 2 файлов(

Добавлено через 13 минут
OOOO! Спасибо ,-DE-! теперь заменила заглавные буквы на маленькие в имени файлов на сервере... И ВСЕ РАБОТАЕТ! УРА! Никогда не работала с Linux..Буду знать! Спасибо еще раз!

-De- 19.05.2010 15:39

Цитата:

Сообщение от Эльвира (Сообщение 909293)
Добавлено через 1 минуту
буквы поменяла. но по-прежнему не работает(

Если меняли во флэшке и не помогло, то похоже она закэшировалась. Про кэширование флэшек есть куча инфы где угодно.
Если просто - при работе с удалённым сервером всегда не забывайте залить новую swf и почистить кэш браузера. Написал, т.к. может сохранить тонны нервов и времени, когда обновлённая флэшка работает точно как старая, т.к. она старая и есть.

Эльвира 19.05.2010 15:50

Спасибо еще раз за участие))

proxiServer 19.05.2010 16:27

Цитата:

Просто, я думала, что здесь помогают..
Помогают. Просто по разному. Делать за вас я не хочу.

А логика вашего приложения все равно не верна. У людей с "медленным" интернетом работать будет плохо. У меня на работе не работает.


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

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