Просмотр полной версии : Проблема загрузки
lineleon
27.12.2008, 16:39
Ситуация:
Есть flash-ролик, через который пользователи посредством FileReference загружают фото. У меня все работает прекрасно через IE. Тем не менее, у 90% клиентов ничего не получается. У меня не получается загружать через Opera и Mozilla. Пишет ошибку onIOError
Итак, вопрос знатокам. Как наладить загрузку фото?
Заранее большое спасибо!
У экстрасенсов рождественские каникулы, придется постить код.
lineleon
27.12.2008, 18:55
Ну ок...
stop ();
var loadmem:LoadVars = new LoadVars ();
var str = "random=" + new Date ().getTime ();
loadmem.load ("mem.php?" + str);
loadmem.onLoad = function (ok) {
if (ok) {
_root.mem = loadmem.mem;
}
};
import flash.net.FileReferenceList;
import flash.net.FileReference;
o_btn.enabled = false;
o_btn._alpha = 50;
var listener:Object = new Object ();
var fileRef:FileReferenceList = new FileReferenceList ();
fileRef.addListener (listener);
listener.onSelect = function (fileRefList:FileReferenceList) {
o_btn.enabled = true;
o_btn._alpha = 100;
var list:Array = fileRefList.fileList;
for (var i:Number = 0; i < list.length; i++) {
item = list[i];
trace (item.addListener (this));
txt = item.name;
}
};
listener.onCancel = function ():Void {
txt = "Загрузка отменена";
};
listener.onOpen = function (file:FileReference):Void {
txt = "onOpen: " + file.name;
};
listener.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
txt = bytesLoaded + " : " + bytesTotal;
};
listener.onComplete = function (file:FileReference):Void {
txt = "Удачно загружено";
_root.photovar = 1;
o_btn.enabled = false;
o_btn._alpha = 50;
obt.enabled = false;
obt._alpha = 50;
_root.ph1.loadMovie ("imgs/1_" + _root.mem + "_small.jpg");
};
listener.onHTTPError = function (file:FileReference, httpError:Number):Void {
txt = "onHTTPError: " + file.name + " httpError: " + httpError;
};
listener.onIOError = function (file:FileReference):Void {
txt = "onIOError: " + file.name;
};
listener.onSecurityError = function (file:FileReference, errorString:String):Void {
txt = "onSecurityError: " + file.name + " errorString: " + errorString;
};
o_btn.onRelease = function () {
item.upload ("upload.php?f=1&mem=" + _root.mem);
};
obt.onRelease = function () {
fileRef.browse ([{description:"JPEGs", extension:"*.JPG;*.jpg"}]);
};
///ph 2
o_btn1.enabled = false;
o_btn1._alpha = 50;
var listener1:Object = new Object ();
var fileRef1:FileReferenceList = new FileReferenceList ();
fileRef1.addListener (listener1);
listener1.onSelect = function (fileRefList:FileReferenceList) {
o_btn1.enabled = true;
o_btn1._alpha = 100;
var list1:Array = fileRefList.fileList;
for (var i:Number = 0; i < list1.length; i++) {
item1 = list1[i];
trace (item1.addListener (this));
txt1 = item1.name;
}
};
listener1.onCancel = function ():Void {
txt1 = "Загрузка отменена";
};
listener1.onOpen = function (file:FileReference):Void {
txt1 = "onOpen: " + file.name;
};
listener1.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
txt1 = bytesLoaded + " : " + bytesTotal;
};
listener1.onComplete = function (file:FileReference):Void {
txt1 = "Удачно загружено";
_root.photovar = 1;
o_btn1.enabled = false;
o_btn1._alpha = 50;
obt1.enabled = false;
obt1._alpha = 50;
_root.ph2.loadMovie ("imgs/2_" + _root.mem + "_small.jpg");
};
listener1.onHTTPError = function (file:FileReference, httpError:Number):Void {
txt1 = "onHTTPError: " + file.name + " httpError: " + httpError;
};
listener1.onIOError = function (file:FileReference):Void {
txt1 = "onIOError: " + file.name;
};
listener1.onSecurityError = function (file:FileReference, errorString:String):Void {
txt1 = "onSecurityError: " + file.name + " errorString: " + errorString;
};
o_btn1.onRelease = function () {
item1.upload ("upload.php?f=2&mem=" + _root.mem);
};
obt1.onRelease = function () {
fileRef1.browse ([{description:"JPEGs", extension:"*.JPG;*.jpg"}]);
};
///ph 3
o_btn2.enabled = false;
o_btn2._alpha = 50;
var listener2:Object = new Object ();
var fileRef2:FileReferenceList = new FileReferenceList ();
fileRef2.addListener (listener2);
listener2.onSelect = function (fileRefList:FileReferenceList) {
o_btn2.enabled = true;
o_btn2._alpha = 100;
var list2:Array = fileRefList.fileList;
for (var i:Number = 0; i < list2.length; i++) {
item2 = list2[i];
trace (item2.addListener (this));
txt2 = item2.name;
}
};
listener2.onCancel = function ():Void {
txt2 = "Загрузка отменена";
};
listener2.onOpen = function (file:FileReference):Void {
txt2 = "onOpen: " + file.name;
};
listener2.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
txt2 = bytesLoaded + " : " + bytesTotal;
};
listener2.onComplete = function (file:FileReference):Void {
txt2 = "Удачно загружено";
_root.photovar = 1;
o_btn2.enabled = false;
o_btn2._alpha = 50;
obt2.enabled = false;
obt2._alpha = 50;
_root.ph3.loadMovie ("imgs/3_" + _root.mem + "_small.jpg");
};
listener2.onHTTPError = function (file:FileReference, httpError:Number):Void {
txt2 = "onHTTPError: " + file.name + " httpError: " + httpError;
};
listener2.onIOError = function (file:FileReference):Void {
txt2 = "onIOError: " + file.name;
};
listener2.onSecurityError = function (file:FileReference, errorString:String):Void {
txt2 = "onSecurityError: " + file.name + " errorString: " + errorString;
};
o_btn2.onRelease = function () {
item2.upload ("upload.php?f=3&mem=" + _root.mem);
};
obt2.onRelease = function () {
fileRef2.browse ([{description:"JPEGs", extension:"*.JPG;*.jpg"}]);
};
///ph 4
o_btn3.enabled = false;
o_btn3._alpha = 50;
var listener3:Object = new Object ();
var fileRef3:FileReferenceList = new FileReferenceList ();
fileRef3.addListener (listener3);
listener3.onSelect = function (fileRefList:FileReferenceList) {
o_btn3.enabled = true;
o_btn3._alpha = 100;
var list3:Array = fileRefList.fileList;
for (var i:Number = 0; i < list3.length; i++) {
item3 = list3[i];
trace (item3.addListener (this));
txt3 = item3.name;
}
};
listener3.onCancel = function ():Void {
txt3 = "Загрузка отменена";
};
listener3.onOpen = function (file:FileReference):Void {
txt3 = "onOpen: " + file.name;
};
listener3.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
txt3 = bytesLoaded + " : " + bytesTotal;
};
listener3.onComplete = function (file:FileReference):Void {
txt3 = "Удачно загружено";
_root.photovar = 1;
o_btn3.enabled = false;
o_btn3._alpha = 50;
obt3.enabled = false;
obt3._alpha = 50;
_root.ph4.loadMovie ("imgs/4_" + _root.mem + "_small.jpg");
};
listener3.onHTTPError = function (file:FileReference, httpError:Number):Void {
txt3 = "onHTTPError: " + file.name + " httpError: " + httpError;
};
listener3.onIOError = function (file:FileReference):Void {
txt3 = "onIOError: " + file.name;
};
listener3.onSecurityError = function (file:FileReference, errorString:String):Void {
txt3 = "onSecurityError: " + file.name + " errorString: " + errorString;
};
o_btn3.onRelease = function () {
item3.upload ("upload.php?f=4&mem=" + _root.mem);
};
obt3.onRelease = function () {
fileRef3.browse ([{description:"JPEGs", extension:"*.JPG;*.jpg"}]);
};
///ph 5
o_btn4.enabled = false;
o_btn4._alpha = 50;
var listener4:Object = new Object ();
var fileRef4:FileReferenceList = new FileReferenceList ();
fileRef4.addListener (listener4);
listener4.onSelect = function (fileRefList:FileReferenceList) {
o_btn4.enabled = true;
o_btn4._alpha = 100;
var list4:Array = fileRefList.fileList;
for (var i:Number = 0; i < list4.length; i++) {
item4 = list4[i];
trace (item4.addListener (this));
txt4 = item4.name;
}
};
listener4.onCancel = function ():Void {
txt4 = "Загрузка отменена";
};
listener4.onOpen = function (file:FileReference):Void {
txt4 = "onOpen: " + file.name;
};
listener4.onProgress = function (file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void {
txt4 = bytesLoaded + " : " + bytesTotal;
};
listener4.onComplete = function (file:FileReference):Void {
txt4 = "Удачно загружено";
_root.photovar = 1;
o_btn4.enabled = false;
o_btn4._alpha = 50;
obt4.enabled = false;
obt4._alpha = 50;
_root.ph5.loadMovie ("imgs/5_" + _root.mem + "_small.jpg");
};
listener4.onHTTPError = function (file:FileReference, httpError:Number):Void {
txt4 = "onHTTPError: " + file.name + " httpError: " + httpError;
};
listener4.onIOError = function (file:FileReference):Void {
txt4 = "onIOError: " + file.name;
};
listener4.onSecurityError = function (file:FileReference, errorString:String):Void {
txt4 = "onSecurityError: " + file.name + " errorString: " + errorString;
};
o_btn4.onRelease = function () {
item4.upload ("upload.php?f=5&mem=" + _root.mem);
};
obt4.onRelease = function () {
fileRef4.browse ([{description:"JPEGs", extension:"*.JPG;*.jpg"}]);
};
Добавлено через 3 минуты
Люди, только не говорите, что это из-за мультиаплоада, атрибутов и из-за принимающего файла. Ну то есть будьте внимательны, плиз.
А зачем одно и тоже 5 раз писать))
lineleon, для оформления кода используют не <as></as>, а . Не путайте.
lineleon
28.12.2008, 02:22
Окей, [as].
По поводу 5 раз одного и того же. Функция не будет работать при мультиаплоаде файлреференса. По сути, я реализовал мультиаплоад во флеш. Но почему то не работает в Мозилле и Опере. Почему?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.