salut à tous ...
je galère franchement sur un objet fileReference qui n'exécute pas un listener.

vous pouvez m'expliquer pourquoi mon événement

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
 
    listener.onUploadCompleteData = function(file:FileReference, mon_retour) {
            flash.external.ExternalInterface.call("module._getMyLastFile", mon_retour);
            trace('php dit '+mon_retour);
    };

ne s'exécute jamais ?
je dirai que c'est parce qu'il est posé sur une fileReferenceList et pas sur une fileReference ... mais si c'est bien ça je fais comment pour le mettre où il faut ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
 
 
 
 
    import flash.net.FileReferenceList;
    import flash.net.FileReference;
    import mx.controls.ProgressBar;
    /*
 
    Oui il est tout a fait possible d'appliquer un filtre sur les fichiers dans la fenetre de sélectin. Voici un exemple de code  :
 
    var allTypes:Array = new Array();
    var imageTypes:Object = new Object();
    imageTypes.description = "Images (*.JPG;*.JPEG;*.JPE;*.GIF;*.PNG<img src="images/smilies/wink.gif" border="0" alt="">";
    imageTypes.extension = "*.jpg; *.jpeg; *.jpe; *.gif; *.png;";
    allTypes.push(imageTypes);
 
    var textTypes:Object = new Object();
    textTypes.description = "Text Files (*.TXT;*.RTF<img src="images/smilies/wink.gif" border="0" alt="">";
    textTypes.extension = "*.txt; *.rtf";
    allTypes.push(textTypes);
 
    var fileRef:FileReferenceList = new FileReferenceList();
    fileRef.browse(allTypes);
 
    */
    var FLRef:FileReferenceList = new FileReferenceList();
    // Adresse du script qui va gérer le fichier uploadé
    var urlUpload = "http://127.0.0.1/WEB/SCRIPTS_VRAC/upload/FILEREFERENCE/FileUploader/upload.php";
    var arListFiles:Array;
    var compteurUpload = 0;
    var total_upload = 0;
    var total_current_upload = 0;
    var upload = 0;
    var current_upload = 0;
    var nb_file_upload = 0;
    // Listener pour gérer les événements
    var listener:Object = new Object();
    FLRef.addListener(listener);
    // Event sur la selection du ou des fichiers
    listener.startAllUploads = function(fileRL:FileReferenceList) {
            trace('tttptptp');
            compteurUpload = 0;
            arListFiles = fileRL.fileList;
            trace(arListFiles);
            // On récupére la taille totale des fichiers à uploader
            for (var i:Number = 0; i<fileRL.fileList.length; i++) {
                    total_upload += arListFiles[i].size;
                    trace (arListFiles[i].size);
            }
            // Maintenant on commence par uploader le premier fichier
            if (arListFiles[compteurUpload] != null) {
                    arListFiles[compteurUpload].addListener(this);
                    arListFiles[compteurUpload].upload(urlUpload);
            }
    };
    ////////
    listener.onSelect = function(fileRL:FileReferenceList) {
            alert('tt');
            arListFiles = fileRL.fileList;
            for (var i:Number = 0; i<fileRL.fileList.length; i++) {
                    trace(arListFiles[i].name);
            }
    };
    upload_btn.onRelease = function() {
            listener.startAllUploads(FLRef);
            trace('upstart'+arListFiles);
    };
    listener.onComplete = function(file:FileReference):Void  {
            trace ('complete'+file);
 
            total_current_upload += upload;
            upload = 0;
            if (compteurUpload+1<arListFiles.length) {
                    compteurUpload++;
                    // Maintenant on upload le fichier suivant
                    if (arListFiles[compteurUpload] != null) {
                            arListFiles[compteurUpload].addListener(this);
                            arListFiles[compteurUpload].upload(urlUpload);
                    }
            }
    };
    //
    ////////////////
    //
    listener.onUploadCompleteData = function(file:FileReference, mon_retour) {
            flash.external.ExternalInterface.call("module._getMyLastFile", mon_retour);
            trace('php dit '+mon_retour);
    };
 
 
    // Event sur erreur HTTP
    listener.onHTTPError = function(file:FileReference):Void  {
    };
    // Event sur l'annulation de l'upload
    listener.onCancel = function(file:FileReference):Void  {
    };
    // Event sur l'ouverture du fichier
    listener.onOpen = function(file:FileReference):Void  {
    };
    // Mise à jour des progresse bar
    listener.onProgress = function(file:FileReference, bytesLoaded:Number, bytesTotal:Number):Void  {
            //trace ("onProgress : " + file.name);
            if (upload == 0) {
                    upload = bytesTotal;
            }
            // PB Current
            current_upl.setProgress(bytesLoaded, upload);
            // PB Total
            total_upl. setProgress(total_current_upload+by
            tesLoaded, total_upload);
    };
    // Event d'erreur E/S
    listener.onIOError = function(file:FileReference):Void  {
    };
    // Bouton pour l'upload
    btnUpload.onPress = function() {
            FLRef.browse();
    };
Un grand merci à celui ou celle qui prendra un peu e temps pour m'aider ... j'ai fait quelques forums mais personne ne semble avoir la réponse... je suis un peu à bout là