Avatar billede jonas_h Nybegynder
20. april 2006 - 17:09 Der er 16 kommentarer og
1 løsning

Problemer med at hente data ind fra ASP.

Jeg har en side, hvor der bliver hentet nogle variable ind i en flash-fil fra en ASP side.
Bruger dette actionscript:
myData = new LoadVars()
myData.load("flashLoadData.asp")
myData.onLoad = function(succes){
  if(succes){
    var1 = this.varFraASP;
        osv...     
  } else trace ("Error loading data")
}

Det har altid virket, men nu har jeg skiftet server, o gpludselig virker det slet ikke mere!
I flash står der bare "Undefined" alle steder hvor der før stod "rigtig" data.
Har testet siden "flashLoadData.asp" og den skriver helt rigtigt ud...

Har I nogle forslag??
Avatar billede barklund Nybegynder
20. april 2006 - 17:12 #1
Kan du smide et link til sitet? Så er det lidt nemmere :)
Avatar billede jonas_h Nybegynder
20. april 2006 - 17:14 #2
Barklund: Det er lukket ned nu, da jeg ikke vil have brugere ind, når det ikke virker korrekt. Men hvad vil det hjælpe at se sitet?
Avatar billede jonas_h Nybegynder
22. april 2006 - 20:01 #3
Slet ingen som kan hjælpe??
Avatar billede barklund Nybegynder
24. april 2006 - 09:51 #4
Jeg har jo ingen anelse om, hvad fejlen kan være - du skriver jo bare at det virkede og at det nu ikke virker. Der kan være lavet en milliard ting om! Det kan skyldes whitespace i output, crossdomain-begrænsninger og andre ting.
Avatar billede jonas_h Nybegynder
24. april 2006 - 09:56 #5
Ved ikke rigtigt hvad jeg kan skrive ellers, da jeg virkelig ikke aner hvad der er sket.
Prøvede at lave en ASP-fil, som bare indeholdt:
  Response.Write "&variabel1=" & Server.URLEncode("blablabla")
Hvilket virkede fint. Når jeg så ændrer det til
  Response.Write "&variabel1=" & Server.URLEncode(rs("dbfelt"))
virker det ikke længere. Prøver jeg at se ASP-siden, bliver begge sider skrevet korrekt ud.

Kan der være nogle begrænsninger på den nye server som gør, at flash ikke "må" se på en ASP side som henter fra en database?
Avatar billede barklund Nybegynder
24. april 2006 - 09:58 #6
Flash aner ikke, hvad ASP siden laver - Flash kan jo ikke se kilden. Så der er tydeligvist en forskel, men jeg kan ikke fortælle forskellen, hvis jeg ikke kan se scriptet ;)

Lav en med_db.asp og en uden_db.asp, smid det op på en server og så skal jeg kigge på det :)

--
Morten Barklund
Avatar billede jonas_h Nybegynder
24. april 2006 - 15:49 #7
Min flashkode:
var blah;

myData = new LoadVars()
myData.load("test.asp")
myData.onLoad = function(succes){
  if(succes){
    blah = this.strQuestion;
     
  } else trace ("Error loading data")
}


Min ASP-Fil:
<!--#Include Virtual = "data/functions.asp"-->
<%
Call connectDb()
sql = "SELECT nickname FROM users WHERE id=1"
Set rs=nconn.Execute(sql)
    Response.Write "&strQuestion=" & Server.URLEncode(rs("nickname"))
        'Response.Write "&strQuestion=" & Server.URLEncode("Det virker")
Set rs=Nothing
Call closeDb()
%>


Når jeg kører min asp-fil:
&strQuestion=Jones

ALT virker når jeg "udkommenterer" den response.write hvor rs("nickname") hentes,
og når jeg så bytter om, kommer der "undefined" i flash-filen...
ASP-siden skriver det helt korrekt ud som du kan se..
Avatar billede barklund Nybegynder
24. april 2006 - 16:02 #8
Hm, der er endda url-encode på, så det burde virke. Men må jeg ikke selv se outputtet - kan du ikke smide det op på den server, hvor det enten virker/ikke virker?
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:04 #9
Barklund: hvilket output? Fra ASP-filen eller hvad?
Avatar billede barklund Nybegynder
24. april 2006 - 16:07 #10
Ja, stik mig et link, så jeg selv kan se _præcist_ hvad den outputter ;)
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:09 #11
http://www.quiz-it.dk/test/test.asp

Jeg har prøvet en MASSE forskelligt nu... Kan det have noget at gøre med, at ASP-siden bliver afviklet for langsomt til flashfilen?
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:14 #12
OK prøvede lige noget...
Lavede ASP siden KUN med response.write "&strQ..." hvor det virkede...
Prøvede så,  at sætte en løkke ind lige inden response.write, som sagde
for i =0 To i=900
    i*i
next
Hvorefter det IKKE virkede... Nu har jeg da fundet problemet, men hvordan løser man sådan noget?? Kan man sætte et check i flash-filen som først går videre når alt er loadet eller lignende?
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:30 #13
Undskyld min fejl.. Har siddet og kodet java hele dagen, så har lige glemt hvordan ASP-syntaksen er :)
Men nej, det var åbenbart ikke den fejl alligevel.
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:36 #14
Ok skriver lidt mange gange i træk her...

Men har nu fundet ud af, at det er pga den der functions.asp jeg include'r på siden. Men det har jeg gjort på 2 andre servere og det virkde fint. Og burrde det ikke også virke perfekt, når ASP siden skriver det korrekte ud?
Avatar billede jonas_h Nybegynder
24. april 2006 - 16:41 #15
Så har jeg fundet fejlen:
Response.CacheControl = "no-cache"
denne linje indgår i functions.asp. Fjerner jeg den, virker det hele som før.

Hvordan kan det være???
Avatar billede barklund Nybegynder
24. april 2006 - 16:52 #16
Skal jeg sgu ikke kunne sige. Ikke andet end at IIS er fjollet :)

Husk at lave et svar selv og acceptere.
Avatar billede jonas_h Nybegynder
24. april 2006 - 20:03 #17
Det skal jeg gøre :) Men du må have tak for hjælpen!
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