{lang: 'de'}
Flashhilfe.de - Flash Community

Fehler mit Textfeldern oder Gästebuch [Flash 11]

 


AntwortenRegistrieren Seite1  

cokebaby#1
Benutzerbild von cokebaby
Beiträge: 25
Registriert: Dec 2010

30.05.2016, 03:26

Hallo!
Ich habe meine Flashhomepage in as3 geschrieben, deshlab poste ich hier:
Meine Frage ist diese:
Was mache ich falsch?
Ich habe auf meiner Homepage auch ein Gästebuch!
Aber das funktioniert nur wenn ich das Textfeld entferne das ich in meiner Homepage bei
Updates gehabt habe!
BZW genauer gesagt sobald ich eine UI Scrollbar in mein Update Textfeld eingefügt habe
ging mein Gästebuch kaputt! Und die Einträge werden nciht mehr korreckt dargestellt!
Kurioserweise :
Wenn ich die scrollbar in dem Textfeld meiner Updates wieder entferne ist mein Gästebuch immer noch kaputt!

Was mache ich falsch? Und wie bekomme ich mein Gästebuch wieder repariert?

Die Adresse der Seite ist : http://www.rene-sona.de/dj-luigi/

Mit freundlichen Grüssen
Cokebaby

PS: Ich weiss nicht welche Flashversion das ist ich benutze Flash Creative Suite 5.5
Geändert von cokebaby am 30.05.16 um 03:30 Uhr
kuhly#2
Benutzerbild von kuhly
Beiträge: 4
Registriert: May 2016

30.05.2016, 04:43

also was das Gästebuch angeht. Da wird man dir, ohne einblick ins script, nicht wirklich weiter helfen können.

...aber nachdem ich mir deine Seiten angeschaut habe, gebe ich dir ma nen Tip...
vergiss Flash als Grundlage für deine Seiten... das bringt nichts... wenn du wirklich professionell anfangen willst Webseiten zu entwerfen, setz dich mit html5 auseinander... flash bzw ac3 ist einfach nicht wirklich barrierefrei... schon mal versucht deine seiten auf nen Smartphone oder Tablet zu öffnen?

...mit html5 kannst du das gleiche machen wie mit AS3 nur halt besser und vor allem barrierefrei weil es von jeden medium unterstützt wird. wie gesagt... is nur nen tip...
Geändert von kuhly am 30.05.16 um 05:07 Uhr
cokebaby#3
Benutzerbild von cokebaby
Beiträge: 25
Registriert: Dec 2010

Themenautor/in

30.05.2016, 12:22

Hallo!
also erst mal wollte ich sagen, das in der index.swf bzw fla wo der button für das gästebuch ist kommt im Feld output diese Meldung:

SecurityError: Error #2000: Kein aktiver Sicherheitskontext.

TypeError: Error #1009: Der Zugriff auf eine Eigenschaft oder eine Methode eines null-Objektverweises ist nicht möglich.
   at fl.containers::ScrollPane/drawBackground()
   at fl.containers::ScrollPane/draw()
   at fl.core::UIComponent/callLaterDispatcher()

Und dann wollte ich noch dazu sagen das das Gästebuch einwandfrei funktioniert. Das siehst du hier:  http://www.rene-sona.de/dj-luigi/guestbook.swf

Der Fehler muss in der index.fla liegen. Denn bis gestern funktionierte das GB dort noch wenn ich es aufgerufen habe. dann habe ich rechts unten wo Updates steht ein Textfeld mit IU-scrollbar einfgefügt und Peng war das GB kaputt. Aber durch entfernen der IU Scrollbar hat sich das GB leider nicht wieder erholt und ist kaputt geblieben!

Also hier noch deine gewünschten as-texte:
Der as teil meiner index.swf lautet:

ActionScript:
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
import flash.display.Loader ;
import flash.net.URLRequest;
import flash.events.MouseEvent;
import flash.net.navigateToURL;

bildergallerie.addEventListener(MouseEvent.CLICK, buttonClickHandler1);
filmgallerie.addEventListener(MouseEvent.CLICK, buttonClickHandler2);
kontakt.addEventListener(MouseEvent.CLICK, buttonClickHandler3);
impresum.addEventListener(MouseEvent.CLICK, buttonClickHandler4);
//pfeillinks.addEventListener(MouseEvent.CLICK, buttonClickHandler5);
//pfeilrechts.addEventListener(MouseEvent.CLICK, buttonClickHandler6);
player.addEventListener(MouseEvent.CLICK, buttonClickHandler7);
termine.addEventListener(MouseEvent.CLICK, buttonClickHandler8);
gaestebuch.addEventListener(MouseEvent.CLICK, buttonClickHandler9);
dj_luigi_de_vu.addEventListener(MouseEvent.CLICK, buttonClickHandler10);
rene_sona_de_dj_luigi.addEventListener(MouseEvent.CLICK, buttonClickHandler11);
lautsprecher.addEventListener(MouseEvent.CLICK, buttonClickHandler12);
bildrotator.addEventListener(MouseEvent.CLICK, buttonClickHandler13);

var request:URLRequest = new URLRequest("veranstaltungshinweis.swf"); // lade-swf-rotator.swf
var loader:Loader = new Loader()
loader.load(request);
addChild(loader);
loader.x=40; // use your X position here
loader.y=75;  // use your Y position here
//loader.width = 0;
// wie man die position einfügt steht auf https://forums.creativecow.net/thread/190/868207

function buttonClickHandler1(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest("bildergalerie-luigi.swf"));
}
function buttonClickHandler2(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest("filmgalerie.swf"));
     
}
function buttonClickHandler3(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest("lade-swf-kontakt.swf"));
     
}

function buttonClickHandler4(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest("impresum.swf"));
     
}

function buttonClickHandler5(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest(""));
     
}

function buttonClickHandler6(event:MouseEvent):void {
      loader.unload()
     loader.load(new URLRequest(""));
}

function buttonClickHandler7(event:MouseEvent):void {
      SoundMixer.stopAll();
     loader.unload();
     loader.load(new URLRequest("player-swf.swf"));
}

function buttonClickHandler8(event:MouseEvent):void {
      loader.unload();
     loader.load(new URLRequest("termine.swf"));
}

function buttonClickHandler9(event:MouseEvent):void {
      loader.unload();
     loader.load(new URLRequest("lade-swf-gaestebuch2.swf"));//guestbook.swf //lade-swf-gaestebuch.swf
}

function buttonClickHandler10(event:MouseEvent):void {
  var pageURL:URLRequest = new URLRequest("http://dj-luigi.de.vu");
     navigateToURL(pageURL, "_blank");
}

function buttonClickHandler11(event:MouseEvent):void {
  var pageURL:URLRequest = new URLRequest("http://rene-sona.de/dj-luigi");
     navigateToURL(pageURL, "_blank");
}

function buttonClickHandler12(event:MouseEvent):void {
      SoundMixer.stopAll();
}

function buttonClickHandler13(event:MouseEvent):void {
      loader.unload();
     loader.load(new URLRequest("lade-swf-rotator.swf"));
}

// wie man die position einfügt steht auf https://forums.creativecow.net/thread/190/868207


stop()


und der as teil des gästebuch das ich aus dem Internet habe lautet:

ActionScript:
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
//import-Anweisungen, nicht aendern.
import fl.controls.ScrollPolicy;
import fl.containers.ScrollPane;
import fl.transitions.TransitionManager;
import fl.transitions.Transition;
import fl.transitions.Fade;
import fl.transitions.easing.None;

import flash.events.Event;

import GBItem;

//URL zur  gaestebuch.xml
var url:String="guestbook.xml";
//URL "Boese Worte"-txtDatei
var txtUrl:String="badwords.txt";
//FadeAnimation-Dauer (in Sekunden)
var fadeTime:Number=0.5;
//TransiationAnimation-Dauer (in Sekunden), wenn neues Item erstellt
var transTime:Number=1;
//Name oben für Eintraege
var itemString:String="Anzahl der Einträge:";
//Name oben für Neuer Eintrag verfassen
var newItemString:String="Neuen Eintrag schreiben";
//Hoehe der Scrollflaeche
var scrollHeight:Number=330;
// Breite der Scrollflaeche,
var scrollWidth:Number=550;
// x und y position der Scrollflaeche, standardmaessig oben links
var scrollX:Number=0;
var scrollY:Number=30;

//Nicht aenderbare Eigenschaften und Funktionen
var gbScrollPane_mc:ScrollPane=new ScrollPane();
var title_mc:TitleItem=new TitleItem();
var bottom_mc:BottomItem=new BottomItem();
var gbXml:XML;
var newGbXml:XML;
var lastGbItem:XML;
var newItem_mc:NewItem;
var counter:int=0;
var wordsArray:Array=new Array();
init();

//init-Methode, erstellt das Aussehen
function init():void{
     //Obere Anzeige
   title_mc.item_txt.mouseEnabled=false;
     title_mc.item_txt.selectable=false;
     title_mc.item_txt.text=itemString+" "+counter;
     title_mc.y=0;
     this.addChild(title_mc);
     TransitionManager.start(title_mc, {type:Fade, direction:Transition.IN, duration:fadeTime, easing:None.easeOut});
     
     //Scrollflaeche
   gbScrollPane_mc.x=scrollX;
     gbScrollPane_mc.y=scrollY;
     gbScrollPane_mc.setSize(scrollWidth,scrollHeight);
     gbScrollPane_mc.horizontalScrollPolicy=ScrollPolicy.OFF;
     this.addChild(gbScrollPane_mc);
     
     //Untere Anzeige
   bottom_mc.item_btn.buttonMode =true;
     bottom_mc.item_btn.item_txt.mouseEnabled=false;
     bottom_mc.item_btn.item_txt.selectable=false;
     bottom_mc.item_btn.item_txt.text=newItemString;
     bottom_mc.item_btn.item_txt.autoSize="left";
     bottom_mc.item_btn.item_txt.width=bottom_mc.item_btn.item_txt.textWidth+5;
     bottom_mc.item_btn.addEventListener(MouseEvent.CLICK, createNewItemHandler);
     bottom_mc.y=scrollHeight+gbScrollPane_mc.y-1;
     this.addChild(bottom_mc);
     TransitionManager.start(bottom_mc, {type:Fade, direction:Transition.IN, duration:fadeTime, easing:None.easeOut});
     
     //laden der XML-Datei
   var loader:URLLoader=new URLLoader();
     loader.addEventListener(Event.COMPLETE, xmlLoadedHandler);
     loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
     loader.load(new URLRequest(url));
     
     //laden der "Boese-Worte"-txtDatei
   var txtLoader:URLLoader=new URLLoader();
     txtLoader.addEventListener(Event.COMPLETE, txtLoadedHandler);
     txtLoader.addEventListener(IOErrorEvent.IO_ERROR, errorTxtHandler);
     txtLoader.load(new URLRequest(txtUrl));
}

//Aufruf, wenn XML geladen ist
function txtLoadedHandler(e:Event):void{
     var words:String=e.target.data;
     words=words.replace(" ","");
     wordsArray=words.split(",");
}

//Aufruf, wenn XML geladen ist
function xmlLoadedHandler(e:Event):void{
     addGuestBookItems(new XML(e.target.data));
}

//Positioniert die GB-Eintraege
function addGuestBookItems(xml:XML):void{
     var pY=0;
     var frame_mc:MovieClip=new MovieClip();
     var ar:Array=new Array();
     counter=0;
     for each(var item in xml.item){
        counter++;
        ar.unshift(item);
     }
     var count:int=counter;
     for (var i:int=ar.length-1;i>=0;i--){
        var xml:XML=ar[i];
        xml.nr=count;
        count--;
        var gbItem_mc:GBItem=new GBItem(xml);
        gbItem_mc.y=pY;
        frame_mc.addChild(gbItem_mc);
        pY+=gbItem_mc.height+5;
     }
     title_mc.item_txt.text=itemString+" "+counter;
     if (counter>0){
        gbScrollPane_mc.source=frame_mc;
     }
     else{
        var noItem_mc:NoItems=new NoItems();
        gbScrollPane_mc.source=noItem_mc;
     }
}

// Wenn neuer Eintrag erstellt werden soll.
function createNewItemHandler(e:MouseEvent){
     if (newItem_mc){
        this.removeChild(newItem_mc);
     }
     newItem_mc=new NewItem(counter+1, wordsArray);
     newItem_mc.addEventListener(Event.COMPLETE, createNewItemIsCompleteHandler);
     this.addChild(newItem_mc);
}

//Wird aufgerufen, wenn der Eintrag geschrieben ist, oder der Nutzer zurueckkehren moechte
function createNewItemIsCompleteHandler(e:Event):void{
     if (newItem_mc.canSaveTheItem()){
        var loader:URLLoader=new URLLoader();
        loader.addEventListener(Event.COMPLETE, xmlSaveLoadedHandler);
        loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
        loader.load(new URLRequest(url));
        counter++;
     }
}

//Aufruf, wenn XML geladen ist, nachdem ein neuer Eintrag geschrieben wurde.
function xmlSaveLoadedHandler(e:Event):void{
     var xml:String= newItem_mc.getGBItem();
     var allXML:String=new XML(e.target.data).toString();
     allXML=allXML.substring(allXML.indexOf("<guestbook>")+11);
     allXML=allXML.substring(0,allXML.indexOf("</guestbook>"));
        
     allXML=xml+allXML;
     newGbXml=new XML("<guestbook>"+allXML+"</guestbook>");
     lastGbItem=new XML(xml);
     var request:URLRequest = new URLRequest("guestbook.php");
     var variables:URLVariables = new URLVariables();
     newGbXml.normalize();
     variables.guestbook = newGbXml.toString();
     variables.gburl=url;
     request.data = variables;
     request.method = URLRequestMethod.POST;
     var saveLoader:URLLoader = new URLLoader();
     saveLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
     saveLoader.addEventListener(Event.COMPLETE, savingWasCompleteHandler);
     saveLoader.addEventListener(IOErrorEvent.IO_ERROR, savingWasNotCompleteHandler);
     saveLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, savingWasNotCompleteHandler);
     saveLoader.load(request);
}

//Aufgerufen, wenn PHP-Script zum XML speichern erfolgreich aufgerufen wurde
function savingWasCompleteHandler(e:Event):void{
     //XML-Daten konnten gespeichert werden
   if(String(e.target.data.saved)=="true"){
        newItem_mc.savedItem(true);
        gbXml=newGbXml;
        addGuestBookItems(gbXml);
        gbScrollPane_mc.verticalScrollPosition=0;   
     }
     //XML-Daten konnten nicht gespeichert werden
   else{
        newItem_mc.savedItem(false);
     }   
}

//Aufgerufen, wenn PHP-Script zum XML speichern nicht erfolgreich aufgerufen wurde
function savingWasNotCompleteHandler(e:Event):void{
     newItem_mc.savedItem(false);
}

//Wenn ein Fehler beim Laden der XML auftritt
function errorHandler(e:Event):void{
     var noItem_mc:NoItems=new NoItems();
     gbScrollPane_mc.source=noItem_mc;
}

//Wenn ein Fehler beim Laden der "Boese-Worte"-TxtDatei auftritt
function errorTxtHandler(e:Event):void{
     //Macht nichts, boese Worte sind dann erlaubt
}


Und dann gibt es beim Gästebuch noch einen improtierten as-Teil also eine extra as-Datei mit nur as text. Darin steht:

ActionScript:
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
package{
     
     import flash.display.MovieClip;
     import flash.events.Event;
     import flash.events.FocusEvent;
     import flash.events.MouseEvent;
     import flash.events.TimerEvent;
     import flash.text.TextField;
     import flash.utils.Timer;
     
     import fl.transitions.TransitionManager;
     import fl.transitions.Transition;
     import fl.transitions.Fly;
     import fl.transitions.easing.None;
 
     public dynamic class NewItem extends MovieClip{
        
        protected var itemNameString:String="Dein Name";
        protected var itemMailString:String="Deine E-mail-Adresse, freiwillig";
        protected var itemWebsiteString:String="Deine Internetseite";
        protected var itemMsgString:String="Deine Message";
        protected var itemSaveString:String="Senden";
        protected var itemDeleteString:String="Löschen";
        protected var itemBackString:String="Zurück";
        protected var leftX:Number=20;//Position des linken Btn: "Senden"
      protected var inBetween:Number=20;//Zwischenraum zwischen den Btn
      protected var errorString:String="Fehler";
        protected var errorMailString:String="Mailadresse ist nicht korrekt";
        protected var errorNameString:String="Name nicht ausgefüllt";
        protected var errorMsgString:String="Nachricht nicht eingegeben";
        protected var itemMsgTitleToSave:String="Bitte warten";
        protected var itemMsgToSave:String="Nachricht wird gespeichert...";
        protected var itemMsgIsSaved:String="Nachricht wurde gespeichert";
        protected var itemMsgWasNotSaved:String="Nachricht konnte nicht gespeichert werden";
     
        //Nicht zu aendernde Eigenwschaften
      protected var canSaveSomething:Boolean=false;
        protected var itemNr:int;
        protected var date:Date;
        protected var wordsArray:Array;
        protected var saveMsg_mc:NewItemMsgWindow;
        public var name_mc:MovieClip;
        public var mail_mc:MovieClip;
        public var website_mc:MovieClip;
        public var msg_mc:MovieClip;
        public var btnLine_mc:MovieClip;
        
        //Konstruktor
      public function NewItem(nr:int, words:Array){
           this.addEventListener(Event.ADDED, addedHandler);
           this.wordsArray=words;
           this.itemNr=nr;
           this.deleteEnteredTxtHandler(null);
           name_mc.item_txt.addEventListener(FocusEvent.FOCUS_IN, clearTxtHandler);
           name_mc.item_txt.tabIndex=1;
           mail_mc.item_txt.addEventListener(FocusEvent.FOCUS_IN, clearTxtHandler);
           mail_mc.item_txt.tabIndex=2;
           website_mc.item_txt.addEventListener(FocusEvent.FOCUS_IN, clearTxtHandler);
           website_mc.item_txt.tabIndex=3;
           msg_mc.item_txt.addEventListener(FocusEvent.FOCUS_IN, clearTxtHandler);
           msg_mc.item_txt.tabIndex=4;
           name_mc.item_txt.addEventListener(FocusEvent.FOCUS_OUT, resumeTxtHandler);
           mail_mc.item_txt.addEventListener(FocusEvent.FOCUS_OUT, resumeTxtHandler);
           website_mc.item_txt.addEventListener(FocusEvent.FOCUS_OUT, resumeTxtHandler);
           msg_mc.item_txt.addEventListener(FocusEvent.FOCUS_OUT, resumeTxtHandler);
           
           var pX:Number=leftX;
           pX=createBottomBtn(btnLine_mc.save_btn, itemSaveString, pX, saveHandler);
           btnLine_mc.save_btn.tabEnabled=false;
           pX=createBottomBtn(btnLine_mc.delete_btn, itemDeleteString, pX, deleteEnteredTxtHandler);
           btnLine_mc.delete_btn.tabEnabled=false;
           pX=createBottomBtn(btnLine_mc.back_btn, itemBackString, pX, backHandler);
           btnLine_mc.back_btn.tabEnabled=false;
        }
        
        //Wird aufgerufen, wenn der MC auf die Buehne gelangt
      protected function addedHandler (e:Event):void{
           this.removeEventListener(Event.ADDED, addedHandler);
           this.gotoAndPlay("intro");
           TransitionManager.start(this, {type:Fly, direction:Transition.IN, duration:1, easing:None.easeOut, startPoint:6});    
        }
        
        //Ob es ein neues Item gibt, oder der Nutzer den Eintrag abgebrochen hat.
      public function canSaveTheItem():Boolean{
           return canSaveSomething;
        }
        
        //Speichern des Eintrags war vollstaendig
      public function savedItem(savingComplete:Boolean):void{
           saveMsg_mc.close_btn.visible=true;
           var timer:Timer= new Timer(2000);
           if(savingComplete){
              saveMsg_mc.item_txt.text=itemMsgIsSaved;
              timer.addEventListener(TimerEvent.TIMER, dismissMsgWindowAndMcAfterATime);
              timer.start();
           }
           else{
              saveMsg_mc.item_txt.text=itemMsgWasNotSaved;
              timer.addEventListener(TimerEvent.TIMER, dismissMsgWindowAfterATime);
              timer.start();
           }
        }
        
        //Gibt den gerade erstellte n GB-Eintrag als String im XML-Format zurueck
      public function getGBItem():String{
           if (!canSaveSomething){
              return new XML("");
           }
           var day:String=String(date.date);
           if (date.date<10){
              day="0"+day;
           }
           var month:String=String(date.month);
           if (date.month<10){
              month="0"+month;
           }
           var dateString= day+"."+month+"."+date.fullYear;
           var hours:String=String(date.hours);
           if (date.hours<10){
              hours="0"+hours;
           }
           var minutes:String=String(date.minutes);
           if (date.minutes<10){
              minutes="0"+minutes;
           }
           var timeString= hours+":"+minutes;
           var xmlString:String="<item>";
           xmlString+="<nr>"+itemNr+"</nr>";
           xmlString+="<date>"+dateString+"</date>";
           xmlString+="<time>"+timeString+"</time>";
           xmlString+="<name>"+name_mc.item_txt.text+"</name>";
           xmlString+="<msg>"+msg_mc.item_txt.text+"</msg>";
           if (mail_mc.item_txt.text!="" && mail_mc.item_txt.text!=itemMailString){
              xmlString+="<mail>"+mail_mc.item_txt.text+"</mail>";
           }
           if (website_mc.item_txt.text!="" && website_mc.item_txt.text!=itemWebsiteString){
              xmlString+="<website>"+website_mc.item_txt.text+"</website>";
           }
           xmlString+="</item>";
           return xmlString;         
        }
        
        //Erstellt und positioniert die Schaltflaechen unten
      protected function createBottomBtn(mc:MovieClip, named:String, pX:Number, f:Function):Number{
           mc.item_txt.text=named;
           mc.item_txt.autoSize="left";
           mc.x=pX;
           mc.buttonMode =true;
           mc.item_txt.mouseEnabled=false;
           mc.item_txt.selectable=false;
           mc.addEventListener(MouseEvent.CLICK, f);
           return pX+mc.item_txt.width+inBetween;
        }
        
        //Loesche den Textinhalt, wenn Textfeld den Fokus erhaelt
      protected function clearTxtHandler(e:FocusEvent):void{
           checkTxtName((e.target as TextField), name_mc,itemNameString);
           checkTxtName((e.target as TextField), mail_mc,itemMailString);
           checkTxtName((e.target as TextField), website_mc,itemWebsiteString);
           checkTxtName((e.target as TextField), msg_mc,itemMsgString);
        }
        
        protected function checkTxtName(mc1:TextField, mc2:MovieClip, s:String){
           if (mc1.parent==mc2){
              if (mc1.text==s){
                 mc1.text="";
              }
           }
        }
        
        //zeige den Text an, wenn Textfeld leer ist
      protected function resumeTxtHandler(e:FocusEvent):void{
           if (e.target.text!=""){
              return;
           }
           switch(e.target.parent.name){
              case "name_mc": e.target.text=itemNameString; break;
              case "mail_mc": e.target.text=itemMailString; break;
              case "website_mc": e.target.text=itemWebsiteString; break;
              case "msg_mc": e.target.text=itemMsgString; break;
           }
        }
        
        //Handler, wenn Btn "Senden" geklickt wurde
      protected function saveHandler(e:MouseEvent):void{
           if (name_mc.item_txt.text==""||name_mc.item_txt.text==itemNameString){
              showError(1);
              return;
           }
           if (msg_mc.item_txt.text==""||msg_mc.item_txt.text==itemMsgString){
              showError(20);
              return;
           }
           if (mail_mc.item_txt.text!=""&& mail_mc.item_txt.text!=itemMailString){
              var pattern:RegExp = /(\w|[_.\-])+@((\w|-)+\.)+\w{2,4}+/;
              var result:Object = pattern.exec(mail_mc.item_txt.text);
              if(result == null) {
                 showError(10);
                 return;
              }
           }
           if (website_mc.item_txt.text!="" && website_mc.item_txt.text!=itemWebsiteString){
              if (website_mc.item_txt.text.search("http://")){
                 website_mc.item_txt.text="http://"+website_mc.item_txt.text;
              }
           }
           
           name_mc.item_txt.text=checkAgainstBadWords(name_mc.item_txt.text);
           mail_mc.item_txt.text=checkAgainstBadWords(mail_mc.item_txt.text);
           website_mc.item_txt.text=checkAgainstBadWords(website_mc.item_txt.text);
           msg_mc.item_txt.text=checkAgainstBadWords(msg_mc.item_txt.text);
           canSaveSomething=true;
           date= new Date();
           saveMsg_mc=new NewItemMsgWindow();
           addMsgMc(saveMsg_mc,itemMsgToSave, itemMsgTitleToSave, closeMsgWindowAndRemoveHandler,false);
           this.dispatchEvent(new Event(Event.COMPLETE));
           //backHandler(null);
      }
        
        protected function checkAgainstBadWords(s:String):String{
           for(var i:int=0;i<wordsArray.length;i++){
              var myPattern:RegExp = new RegExp(wordsArray[i],"gi");
              s=s.replace(myPattern, "***");
           }
           s=s.replace(">", "&gt;");
           s=s.replace("<", "&lt;");
           return s;
        }
        
        //Handler, wenn Btn "Loeschen" geklickt wurde
      protected function deleteEnteredTxtHandler(e:MouseEvent):void{
           name_mc.item_txt.text=itemNameString;
           mail_mc.item_txt.text=itemMailString;
           website_mc.item_txt.text=itemWebsiteString;
           msg_mc.item_txt.text=itemMsgString;
           if (e!=null){
              this.stage.focus=null;
           }
        }
        
        //Handler, wenn Btn "Zurueck" geklickt wurde
      protected function backHandler(e:MouseEvent):void{
           this.dispatchEvent(new Event(Event.COMPLETE));
           TransitionManager.start(this, {type:Fly, direction:Transition.OUT, duration:1, easing:None.easeOut, startPoint:6});    
           this.gotoAndPlay("outro");
        }
        /*   Handler, wenn Fehler beim Schreiben eines GB-Eintrages
           
           1   Fehler Name
           10   Fehler Mail
           20   Fehler Msg
        */

        protected function showError(code:uint):void{
           var errorDescriptionString:String="Fehler";
           switch(code){
              case 1:errorDescriptionString=errorNameString;break;
              case 10:errorDescriptionString=errorMailString;break;
              case 20:errorDescriptionString=errorMsgString;break;
           }
           addMsgMc(new NewItemMsgWindow(),errorDescriptionString, errorString,closeMsgWindowHandler);
        }
        
        //ERstellt MsgMC
      protected function addMsgMc(mc:MovieClip, msgString:String, titleString:String, f:Function,showing:Boolean=true):void{
           mc.item_txt.mouseEnabled=false;
           mc.item_txt.text=msgString;
           mc.top_txt.mouseEnabled=false;
           mc.top_txt.text=titleString;
           mc.x=(this.width-mc.width)/2;
           mc.y=(this.height-mc.height)/2;
           mc.close_btn.visible=showing;
           mc.close_btn.buttonMode=true;
           mc.close_btn.addEventListener(MouseEvent.CLICK, f);
           this.addChild(mc);
        }
        
        //Entfernt den MsgWindow von der Buehne, wenn gespeichert
      protected function closeMsgWindowHandler(e:MouseEvent):void{
           this.removeChild((e.target.parent as MovieClip));
        }
        
        //Entfernt den MsgWindow von der Buehne
      protected function closeMsgWindowAndRemoveHandler(e:MouseEvent):void{
           TransitionManager.start(this, {type:Fly, direction:Transition.OUT, duration:1, easing:None.easeOut, startPoint:6});    
           this.removeChild((e.target.parent as MovieClip));
        }
        
        //Nach 2 Sekuden aufgerufen, entfernt das MsgWindow
      protected function dismissMsgWindowAfterATime(e:TimerEvent):void{
           e.target.stop();
           e.target.removeEventListener(TimerEvent.TIMER, dismissMsgWindowAfterATime);
           if (this.contains(saveMsg_mc)){
              this.removeChild(saveMsg_mc);
           }
        }
        //Nach 2 Sekuden aufgerufen, entfernt das MsgWindow und den ItemMC
      protected function dismissMsgWindowAndMcAfterATime(e:TimerEvent):void{
           e.target.stop();
           e.target.removeEventListener(TimerEvent.TIMER, dismissMsgWindowAndMcAfterATime);
           if (this.contains(saveMsg_mc)){
              this.removeChild(saveMsg_mc);
              TransitionManager.start(this, {type:Fly, direction:Transition.OUT, duration:1, easing:None.easeOut, startPoint:6});    
 
           }
        }
        
     }
}


Gruss Cokebaby
Geändert von cokebaby am 30.05.16 um 12:26 Uhr
kuhly#4
Benutzerbild von kuhly
Beiträge: 4
Registriert: May 2016

30.05.2016, 22:20

also es ist wirklich wirklich schwer bei deinem flickwerk an script und swf schnipseln durchzublicken... ich hab es trotzdem versucht... also das gästebuch an sich ist in ordnung daran kann es nicht liegen... soweit ich es beurteilen kann liegt es auch nicht an deiner index datei.... meine vermutung ist das deine lade-swf-gästebuch.fla bzw swf den fehler verursacht...

ActionScript:
1
2
3
4
5
6
7
8
9
10
addChild(holder);
function loadComplete(event:Event):void {
      holder.addChild(loader);
      holder.width = 550;
     //holder.height = 5000;
    holder.scaleY = holder.scaleX;
     holder.x=0; // bestimmt die x position! Zahl kleiner = hoch, Zahl grösser ist runter
    holder.y=0;  // bestimmt die y position
    holder.z=0;  // bestimmt die position in einem Stapel
}


mir ist zum beispiel nicht ganz bewusst warum du die höhe des childs auskommentiert hast... versuchs mal damit...

geht es denn, wenn du die guestbook.swf direckt anspriechst ohne den umweg über deine lade-swf-gästebuch.swf zu machen?
Geändert von kuhly am 30.05.16 um 23:19 Uhr
cokebaby#5
Benutzerbild von cokebaby
Beiträge: 25
Registriert: Dec 2010

Themenautor/in

06.06.2016, 13:46

Hallo kuhly   !

Ehrlich gesagt weiss ich bis jetzt noch nicht woran es liegt das es nicht ging!
Denn das das Gästebuch jetzt wieder geht und sichtbar ist und benutzbar,
also man das GB lesen und Einträge machen kann liegt nur daran, das ich meine
index-datai NEU gemacht habe!

Und siehe da , jetzt geht das GB wieder! Also hat es an irgend etwas in der index datai gelegen!

ACH ja:
es muss irgend etwas mit dem "FScrollbar"-Symbol , also dieser leiste zu tun haben,
die ich in meiner index-datei für mein updates - feld benutze!
Denn sobald ich die FScrollbar in meinem Updatefeld weg mache funktioniert mein Gästebuch
wieder nachdem ich die index-datei neu geschrieben habe!
Habe ich die index-datai neu geschrieben und füge in dem Update-Feld wieder diese
FScrollbar ein , ist das Gästebuch wieder zerstört und wird nicht mehr richtig dargestellt!
Und um dies zu beheben reicht es nicht die "FScrollbar" vom Updatefeld zu entfernen, sondern
ich mich die ganze index-fla neu machen!

Warum das so ist weiß ich bis jetzt noch nicht!

Noch was:
Du schreibst in etwa so (Gedächtnis): "der code ist ein zimliches Flickwerk!"
Ja da kannst du recht haben! das liegt daran, das ich damals und heute as2 bzw jetzt as3 nie gelernt habe!
Alles was ich mit meiner Homepage mache habe ich aus Flashforen wie diesem oder dem Flashfrorum . de das sie jetzt abgeschaltet haben!

Vielen Dank für deine Antwort!
Gruss Cokebaby

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de