Zurück   Flashforum > Flash und Server > Flash und Datenbanken

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-06-2007, 14:45   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2005
Ort: Bottrop
Beiträge: 121
Angry mySQL/Flash Flash Player reagiert zu langsam

Hallo,

ich sitze schon seit Tagen ziemlich erfolglos an dem Problem, via PHP
eine Datenbankabfrage auszuführen. Das Ergebnis ist absolut unbefriedigend und frustrierend. Wenn ich lokal den Flash-Film aufrufe, dauert es aberwitzig lange, bevor auch nur IRGENDWAS angezeigt wird.
Der zu übergebende Datensatz ist vielleicht 1 kb groß. Gibt es da etwa eine Limitierung ???

Der Code ist:

PHP-Code:
objItems = new LoadVars();
objItems.id 100;

objItems.onLoad = function(geladen) {
    if(
geladen) {
        for (var 
=0;i<this.ds_total;i++) {
           
menue [i] = this ["Kapitel"+i];
        }
        for (
i=0;i<this.ds_total;i++){
           
objItem.item = [];
          for (
j=0;j<this ["ds"+i];j++){
            
objItem.item [j] = this ["item"+i+"_"+j];         
          }
        
category [i] = objItem;
        }
//        trace (objItem.item.length);
        
make_menue (); 
    };
};
objItems.sendAndLoad("data.php?cache=" + (new Date().getTime()),objItems,"GET"); 
Hat ein Crack von euch vielleicht eine Idee, woran es vielleicht liegen kann, dass das Skript so langsam ausgeführt wird ?

Danke im Voraus.
__________________
Schönen Gruß,

Sky
Skydiver2607 ist offline   Mit Zitat antworten
Alt 25-06-2007, 14:58   #2 (permalink)
Zero to Hero
 
Registriert seit: Apr 2007
Beiträge: 871
hmm ich zieh momentan ne db für ein browsergame auf und hab eigentlich keine performance probleme... im moment liest er zwar noch lokal über xampp aber dennoch performant etwa 30 datensätze in weniger als 0,1 sek aus. wenns online geht kann ich mehr sagen, aber bisher denke ich nicht, dass der player für dein problem verantwortlich ist...

wie sieht denn die funktion make_menue() aus?

greets

mike
ingrimm ist offline   Mit Zitat antworten
Alt 25-06-2007, 15:24   #3 (permalink)
Trennschleifer
 
Benutzerbild von bobo_k1
 
Registriert seit: Apr 2004
Ort: Hamburg
Beiträge: 1.282
ich sag nur http://www.amf-php.org/
vereinfacht die Sache mit Datenbanken um den Faktor 1000
__________________
Es gibt nur zwei Arten von Menschen die Hawaiihemden tragen: Schwuchteln und dicke fette Partylöwen. Und du siehst nicht aus wie ein dicker fetter Partylöwe!" - Homer J. Simpson
bobo_k1 ist offline   Mit Zitat antworten
Alt 25-06-2007, 16:20   #4 (permalink)
Neuer User
 
Registriert seit: Apr 2005
Ort: Bottrop
Beiträge: 121
Question

Hi Mike,

Zitat:
Zitat von ingrimm Beitrag anzeigen
hmm ich zieh momentan ne db für ein browsergame auf und hab eigentlich keine performance probleme... im moment liest er zwar noch lokal über xampp aber dennoch performant etwa 30 datensätze in weniger als 0,1 sek aus. wenns online geht kann ich mehr sagen, aber bisher denke ich nicht, dass der player für dein problem verantwortlich ist...

wie sieht denn die funktion make_menue() aus?

greets

mike
PHP-Code:
var menue = [];
var 
category = [];
var 
objItem:Object = new Object ();

count 0;
verzoegerung 25;
abstand 1;
yLF 5;
//
//    hauptmenue
make_menue = function () {
    var 
anz menue.length;
    var 
arr = [];
/*    
    objItem.item = [];
    for (var i=0;i<anz;i++) {
        for (j=0;j<l2;j++){
          objItem.item [j] = subID [j];         
        }
        category [i] = objItem;
//        trace (objItem.item.length);
    };
*/    
    
for (var 1i<=anzi++) {
        
_root.createEmptyMovieClip ("menu"+i,i+1000);
        
mc _root ["menu"+i];
        
mc.createTextField('txt'10010020);// <--------textfeldparameter einstellen
        
mc.txt.selectable 0;
        
mc._x startx;
        
mc._y starty+i*mc._height+yLF;
        
mc.txt.text "..."+menue[i-1];
        
mc.txt.setTextFormat(font2);// <--------textformat auswählen
        
mc.auf false;//0: geschlossen 1: zeige Unterkategorien
        
mc.count i;
        
arr [i] = mc;
    };
    
    
l1 menue.length

    
x=0y=0;
    for (var 
1<= l1++) {
        
_root.createEmptyMovieClip("subMenu"+i, (i+2500));
        
trace (i);
        
mc0 _root ["subMenu" i];
        
mc0._visible false;
        
mc0.groesse 0;
        
l2 category [i-1].item.length;
        
          for (var 
1j<=l2j++) {
            
mc0.createEmptyMovieClip("mcitem"+j, (j+3000));
            
mc1 _root.mc0 ["mcitem" j];                                                                
            
mc1.createTextField('txt'10010020);
            
mc1.txt.selectable 0;
            
mc1._x x+10;
            
mc1._y y+j*mc1._height+yLF;
            
mc1.txt.text "  "+category [i-1].item [j-1];
            
mc1.txt.setTextFormat(font2);
          }
         
trace (mc0._height);
}    

    for (var 
1i<=anz++) {
        
arr [i].onRelease = function (){
            
this.count;
            
            
// Verschieben
            
            
if (this.auf==false) {
                
trace (this.count+" AUF");
                
sizeMC _root ["subMenu" c]._height;
                
trace ("SIZEMC:="sizeMC);
                
//Verschiebe eigentlichen Menüpunkt:
                
for (p=c+1;p<=anz++){
                   
mcTemp _root ["menu"+p];
                     
newy=arr [p]._y+sizeMC+yLF;
                  
arr [p]._y newy;
                      if (
mcTemp.auf==true) {
                        
oldy _root ["subMenu" p]._y;
                        
newy oldy sizeMC+yLF;
                        
_root ["subMenu" p]._y newy;
                    }
                }
                
this.auf true;
                
mc _root ["subMenu" c];
                
mc._x startx;
                
mc._y this._y;
                
mc._visible true;
            }
            else {
            
// ... wieder zuklappen
                
trace (this.count+" ZU");
                
sizeMC _root ["subMenu" c]._height;
                
//Verschiebe eigentlichen Menüpunkt:
                    
anzahl_zeilen category [c].item.length*14+2*yLF;
                for (
p=c+1;p<=anz++){
                   
mcTemp _root ["menu"+p];
                     
newy=arr [p]._y-sizeMC-yLF;
                  
arr [p]._y newy;
                      if (
mcTemp.auf==true) {
                        
oldy _root ["subMenu" p]._y;
                        
newy oldy sizeMC-yLF;
                        
_root ["subMenu" p]._y newy;
                    }
                }
                
this.auf false;
                
mc _root ["subMenu" c];
                
mc._x startx;
                
mc._y this._y;
                
mc._visible false;                
            }
        }
    }
}; 
Zweck der Übung soll halt sein, ein dynamisches Menü aufzubauen.
Füllt man die entsprechenden Arrays auch mit festen Werten funktioniert es auch. Klappt nur irgendwie nicht, wenn das ganze zur Laufzeit initialisiert werden soll.

Danke im Voraus..
__________________
Schönen Gruß,

Sky
Skydiver2607 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:22 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele