Avatar billede madshenrik Nybegynder
23. november 2001 - 18:31 Der er 28 kommentarer og
2 løsninger

variable udefra

hvad sker der hvis man påny forsøger at loade variable ind i flash der allerede er loadede fra en asp side. 

Mads
Avatar billede sukos Juniormester
23. november 2001 - 18:34 #1
Ved det ikke, men variablen \"aktiveres\" jo først når du kalder den, så det er vel mere et spm om hvornår? Så hvis asp\'en har en anden variabel end tidligere, og den bliver kaldt, ja så er det vel den nye som kommer?
Avatar billede sukos Juniormester
23. november 2001 - 18:37 #2
Noget andet er hvis du vil loade variablen samtidig med flas\'en!

Så er du vel nødt til at få flash til at hente den igen.
Avatar billede lingoman Nybegynder
23. november 2001 - 18:52 #3
Variablen bliver overskrevet hvis den hedder det samme som den tidligere loaded variabel
Avatar billede madshenrik Nybegynder
24. november 2001 - 12:47 #4
lingoman jeg har følgende
loader = _root.readallloader; // loades udefra
if (loader == \"true\") {\0
udfører noget kode
slutter med dette
delete _root.readAllloader;\0
} else {
    gotoAndPlay (2);
}\0

frame 2\'s kode er dette her
loadVariablesNum (\"readAll.asp\", 0);

Dette virker fint første gang man loader readallloader men anden gang sker der ikke en skid.

Mads\0
Avatar billede madshenrik Nybegynder
24. november 2001 - 12:48 #5
udfører noget kode
slutter med dette
delete _root.readAllloader;\0
} else {
    gotoAndPlay (2);
}\0

frame 2\'s kode er dette her
loadVariablesNum (\"readAll.asp\", 0);

Dette virker fint første gang man loader readallloader men anden gang sker der ikke en skid.

Mads\0
Avatar billede madshenrik Nybegynder
24. november 2001 - 12:48 #6
} else {
    gotoAndPlay (2);
}\0

frame 2\'s kode er dette her
loadVariablesNum (\"readAll.asp\", 0);

Dette virker fint første gang man loader readallloader men anden gang sker der ikke en skid.

Mads\0
Avatar billede madshenrik Nybegynder
24. november 2001 - 12:49 #7
frame 2\'s kode er dette her
loadVariablesNum (\"readAll.asp\", 0);

Dette virker fint første gang man loader readallloader men anden gang sker der ikke en skid.

Mads\0
Avatar billede madshenrik Nybegynder
24. november 2001 - 13:15 #8
Altså readallloader loades ikke 2. gang. Hvilket jeg ikke forstår fordi det er nojagtig den samme kode der kaldes igen og igen.  Men ligger der et problem i at man deleter den og så loader den igen.

Mads
Avatar billede lingoman Nybegynder
24. november 2001 - 13:32 #9
Du vil altså gerne implementere in \"refresh\" funktion der tjekker om ASP\'en sender nye værdier?


Jeg tror i at problemet ligger i at loadVariablesNum (\"readAll.asp\", 0); ikke udføres anden gang dersom oplysningerne jo allerede er til stede i cache... Den udføres, men info hentes fra cache fordi filen jo allerede findes der og opdaterer derfor ikke.

Løsningen er at tagge et dato/tids stempel på URL\'en så 2 forskellige kald via loadVariablesNum(URL,level) altid giver en unik adresse. Så tvinger vi kommandoen til at hente de nye oplysninger fra serveren i stedet for cache.
Avatar billede lingoman Nybegynder
24. november 2001 - 13:57 #10
Prøver lige at omformulere:

loadVariablesNum (\"readAll.asp\", 0); //henter oplysninger fra scriptet ved første kald

loadVariablesNum (\"readAll.asp\", 0); //indlæser oplysninger fra cache ved efterfølgende kald. Derfor er info\'en den samme.

Løsning:

//  refresh altid informationerne ved at tagge tids-stempel på URL
//erstat din loadVariablesNum (\"readAll.asp\", 0); med

loadVariablesNum (\"readAll.asp?cacheKiller=\" + getTimer(), 0);

mvh geo
Avatar billede madshenrik Nybegynder
24. november 2001 - 15:51 #11
hvad kræver det af asp scriptet den må vel skulle håndtere den variable cachekiller.

Mads
Avatar billede lingoman Nybegynder
24. november 2001 - 16:03 #12
Virker det ikke?
Avatar billede madshenrik Nybegynder
24. november 2001 - 16:34 #13
Nej ikke umiddelbart. den gør nogenlunde det samme. Det kan godt passe at den loader fra cashen fordi der går lige et lille stykke tid.

Du kan se hvordan det virker her på www.victor-film.dk


Mads
Avatar billede madshenrik Nybegynder
24. november 2001 - 16:35 #14
Den er dog lidt tung idet.
Avatar billede lingoman Nybegynder
24. november 2001 - 20:26 #15
Du bliver nok nød til at vente på svar fra andre, da time-stamp metoden er mit bedste bud.
mvh geo

Avatar billede madshenrik Nybegynder
25. november 2001 - 23:04 #16
ER der ikke noget med at man i en metatag kan tvinge en html til ikke at blive cashed. Hvis ja hvordan gøres dette så.

Mads
Avatar billede nikolajdu Nybegynder
27. november 2001 - 07:02 #17
http://www.metamaten.dk - Udfyld hvad du har brug for og du får det hele serveret :-)
Avatar billede nikolajdu Nybegynder
27. november 2001 - 07:09 #18
Eller lidt hurtigere:

<META HTTP-EQUIV=\"Expires\" CONTENT=\"Mon, 01 Jan 1998 00:00:00 GMT\">
<META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">
<META HTTP-EQUIV=\"Cache-Control\" CONTENT=\"no-store\">
Avatar billede lingoman Nybegynder
27. november 2001 - 08:55 #19
nikolaj>> Har du et bud på hvad der er problemet her ?
Avatar billede nikolajdu Nybegynder
27. november 2001 - 09:08 #20
I PHP kan man bede om ikke at cache. Det er noget mere effektivt.

header(\"Cache-Control: no-cache, must-revalidate\");
header(\"Pragma: no-cache\");

Der MÅ findes en tilsvarende funktion i ASP. :-)
Avatar billede nikolajdu Nybegynder
27. november 2001 - 09:16 #21
En anden og også ganske effektiv metode er at sende en variabel kaldet f.eks \"slutPrut\" med.

Hvis du så modtager en slutPrut=true , så sætter du den til false og looper indtil den bliver true igen. Hver gang den så bliver true ved du at alle variablerne er loaded ind.

/Nikolaj
Avatar billede lingoman Nybegynder
27. november 2001 - 09:19 #22
Det er netop det mads gør med sin readallloader variabel...
Avatar billede nikolajdu Nybegynder
27. november 2001 - 09:30 #23
Jeg forstår ikke helt hans opbygning.

loader = _root.readallloader; // loades udefra
if (loader == \"true\") {}

1. det hedder true uden \"\" - Med mindre han har valgt at det skal sendes i streng og ikke bolean.
2. Hvorfor ikke bare nøjes med én variabel frem for 2 - Altså nøjes med at sætte loaded=\"yesDu\"

if (loaded=\"yesDu\"){
loaded=\"noMore\"
doSomething()
}
Avatar billede madshenrik Nybegynder
27. november 2001 - 09:30 #24
Det har jeg nikolajdu men problemet er jo at den henter fra cashen i stedet for fra serveren. Jeg prøver lige at hitte om det kan lade sig gøre i asp.

mads
Avatar billede nikolajdu Nybegynder
27. november 2001 - 09:34 #25
Hej Mads - Du må undskylde jeg kom til at skrive hen over hovedet på dig. - \"...hans opbygning.\" ;-)

Her anyway samme stil:

<% Response.CacheControl = \"no-cache\"%>>
< Response.AddHeader \"Pragma\", \"no-cache\" %>
Avatar billede nikolajdu Nybegynder
27. november 2001 - 09:35 #26
Og den her også:

<% Response.Expires = -1 %>
Avatar billede madshenrik Nybegynder
27. november 2001 - 11:31 #27
Her er lidt mere om det men tak for hjælpen nikolajdu. Jeg prøver det nok lige i aften kl. lort.

If your application sends pages to the client via a proxy server, the proxy server may cache pages to return them more quickly to the client. This reduces the load on the network and the Web server. To prevent a browser from caching ASP pages, set Response.Expires to some negative number. This will force the cached pages to expire immediately. If you set Response.Expires to 0, and if your browser clock is behind by a few minutes, the page won\'t expire immediately. If your Web site contains objects that do not expire often, such as images, set the expiration to some time in the future. This will greatly increase the speed at which a page is refreshed or downloaded. Proxy caching via pragma:nocache is already done for you by IIS, so you don\'t have to set this in your headers. More information about caching can be found in Got Any Cache?

Mads
Avatar billede nikolajdu Nybegynder
27. november 2001 - 11:33 #28
Mads - Det er lige præcis derfor Lingo foreslog sin metode. Netop en tilfældig variabel bag, så tror en evt. proxy at det er en ny fil og undlader at cache :-)
Avatar billede madshenrik Nybegynder
27. november 2001 - 11:37 #29
Har fanget den men jeg synes ikke det virker. ved ikke hvorfor men det gør det ikke.

mads
Avatar billede madshenrik Nybegynder
24. december 2001 - 11:52 #30
Tak for hjælpen alle.

Mads
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