Avatar billede grafikeren Nybegynder
11. november 2004 - 00:11 Der er 5 kommentarer og
1 løsning

Send array fra Flash til ASP.

Hej.

Jeg har en masse movieclips som indeholder 3 variabler hver. Strukturen er følgende

FeltN (MovieClip)
  F1 (Tekstfelt i FeltN)
  F2 (tekstfelt i FeltN)
  F3 (tekstfelt i FeltN)

FeltN (hvor N er et tal imellem 1-50).

Jeg vil gerne ha' sendt alle disse variabler over til en ASP side. Hvordan gør jeg det lettest, så der stadig er system i alle disse felter. F1,F2,F3 skal senere gemmes som deres egen række i en database. Jeg har smidt alle felter sammen i et array, men kan jeg sende dette videre til ASP?

Jeg er fuldstændig med på, hvordan man sender til ASP. Denne situation er dog lidt speciel...

Nogle gode bud?



Hvis I ikke kan overskue min struktur, så kan I måske forstå lidt mere ved at se følgende loop, som omdanner alle disse mange felter rundt omkring i MC til ét array:

    BrugerListe = new Array();
    for (var i = 1; i<=_global.antalBrugere; i++) {
        BrugerListe.push(_root["felt"+i].f1.text);
        BrugerListe.push(_root["felt"+i].f2.text);
        BrugerListe.push(_root["felt"+i].f3.text);
    }
Avatar billede pyroman Nybegynder
11. november 2004 - 15:56 #1
Måden du sender et array til en asp-fil er at du klasker alt indholdet sammen til en streng, adskildt af et specielt tegn, som du så sender til asp'en, som så skiller den ad igen med en smart funktion, som jeg ikke ved hvad hedder, men i PHP hedder den vist explode (hvilket du ikke kan bruge til en skid ;) )

ex:

minLoadVars.arrayString = BrugerListe.join("-");


I flash hedder den funktion som skal gøre det samme som i asp'en split():

nytBrugerArray = minLoadVars.arrayString.split("-")
Avatar billede grafikeren Nybegynder
11. november 2004 - 19:48 #2
Tak for dit svar. Problemet er næsten løst.

    // send
    varSender = new LoadVars();
    varReceiver = new LoadVars();
    varSender.name = _root.BrugerListeArray; //string
    varSender.sendAndLoad("x.asp", varReceiver, "GET");
    // calback function
    varReceiver.onLoad = function() {
        _root.fejlsvar.text = "Besked sendt - alt ok";
    };

Men hvorfor kan jeg kun sende med variablen 'name'. Jeg har forsøgt med alt mulig andet... Men kun name virker! Er det ikke underligt? Jeg ville gerne ha' sendt en password variabel.
Avatar billede pyroman Nybegynder
11. november 2004 - 21:49 #3
Du kan jo selv bestemme hvad de variabler du sender til ASP'en skal hedde, du får dem så ind i ASP med samme navn som i flash'en:

varSender = new LoadVars();
varReceiver = new LoadVars();
varSender.password = _root.BrugerListeArray; //string
// calback function
varReceiver.onLoad = function() {
  _root.fejlsvar.text = "Besked sendt - alt ok";
};
varSender.sendAndLoad("x.asp", varReceiver, "GET");
Avatar billede grafikeren Nybegynder
12. november 2004 - 22:45 #4
Ja, jeg ved godt, at det lyder underligt... Men jeg kan som sagt ikke kalde dem andet. Og ja, jeg ændre også navnet i ASP.

Lige meget. Du har løst mit spørgsmål. Læg et svar :o)
Avatar billede grafikeren Nybegynder
31. januar 2005 - 01:31 #5
svar?
Avatar billede grafikeren Nybegynder
20. marts 2005 - 13:41 #6
Nåh... Jeg lukker så.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester