Avatar billede andersasp Nybegynder
24. august 2005 - 15:01 Der er 11 kommentarer og
4 løsninger

Loop med dynamisk værdi!

Hejsa eksperter,

Jeg skal have 16 værdier udskrevet, værdierne er en bestemt værdi hvis min database er tom. f.eks:

pic01 = "standard01.jpg"
pic02 = "standard02.jpg"
osv..

Men hvis der f.eks. er 5 felter i databasen skal den så udskrive værdierne udfra datbasen som her:

if not Rec.BOF then
  Rec.AbsolutePage = intPageNumber
  do while Rec.AbsolutePage = intPageNumber
 
pic01 = rec("Pbillede")  ' ?????????????????

' ##########LOOP END ################################
    Rec.MoveNext
  loop
End If

Her udskriver jeg så de resterende værdier

pic06 = "standard06.jpg"


Så mit sprøgsmål er så, hvordan udskriver jeg værdien

pic(nynamisk_nummer_fra_1-x) = rec("Pbillede")  ???????
Avatar billede medions Nybegynder
24. august 2005 - 15:03 #1
du skal stoppe det ned i et array...
fx.

do while Rec.AbsolutePage = intPageNumber
i=i+1
pic(i) = rec("Pbillede")

' ##########LOOP END ################################
    Rec.MoveNext
  loop
End If


og så sige:

For i = 0 To Len(pic())
  Response.Write(pic(i) & "<br />")
Next



fx. :)

//>Rune
Avatar billede andersasp Nybegynder
24. august 2005 - 15:14 #2
Ok, er dog ikke helt med endnu.. Jeg har lagt det ind således:

' ############## LOOP START #############################################
i = 0
if not Rec.BOF then
  Rec.AbsolutePage = intPageNumber
  do while Rec.AbsolutePage = intPageNumber
i=i+1
pic0(i) = rec("Pbillede")

' ##########LOOP END ################################
    Rec.MoveNext
  loop
End If

Og den komme så med fejlen:
###################################################3

Microsoft VBScript runtime error '800a000d'

Type mismatch: 'pic0'
Avatar billede softspot Forsker
24. august 2005 - 15:25 #3
Du er nok nød til at lave en redim i hver iteration, for at dit array bliver udvidet til at kunne indeholde det nye element...
Avatar billede softspot Forsker
24. august 2005 - 15:27 #4
ReDim pic

if not Rec.BOF then
  Rec.AbsolutePage = intPageNumber
  do while Rec.AbsolutePage = intPageNumber
    ReDim preserve pic(ubound(pic)+1)
    pic(ubound(pic)) = rec("Pbillede")

    Rec.MoveNext
  loop
End If
Avatar billede andersasp Nybegynder
24. august 2005 - 15:36 #5
Hej softspot, tak for dit svar: når jeg smider dit ind kommer den med følgende fejl.

Microsoft VBScript compilation error '800a03ed'

Expected '('

/demo/test.asp, line 68

ReDim pic
---------^
Avatar billede medions Nybegynder
24. august 2005 - 15:39 #6
Skriv:
Dim pic()

- den skal jo vide det er et array...

//>Rune
Avatar billede softspot Forsker
24. august 2005 - 15:39 #7
Hmmm... prøv med:

ReDim pic(0)
Avatar billede medions Nybegynder
24. august 2005 - 15:39 #8
Hov...

Dim pic(10)

fx. - altså hvor mange poster der er i arrayet...

//>Rune
Avatar billede softspot Forsker
24. august 2005 - 15:41 #9
Det vides vel ikke på forhånd...?
Avatar billede andersasp Nybegynder
24. august 2005 - 15:47 #10
Åhhh, jeg har en værdi som hedder "thismanytotal" som udskriver hvor mange poster der er. Her ellers indsat følende som ikke melder fejl..
------------------------------------------------------------------

ReDim pic(0)

if not Rec.BOF then
  Rec.AbsolutePage = intPageNumber
  do while Rec.AbsolutePage = intPageNumber
    ReDim preserve pic(ubound(pic)+1)
   
    pic(ubound(pic)) = rec("Pbillede")

    Rec.MoveNext
  loop
End If

MEN hvis jeg prøver at udskrive værdien pic1 er den tom:

response.write pic1 ' <- databaen er ikke tom..??
Avatar billede softspot Forsker
24. august 2005 - 15:51 #11
Du skal skrive

response.write pic(1)

det er den måde arrays fungerer...
Avatar billede andersasp Nybegynder
24. august 2005 - 16:15 #12
Agraaaa, kanon, tusinde tak for hjælpen, begge to! smider du ikke lige et svar softspot??
Avatar billede softspot Forsker
24. august 2005 - 16:20 #13
Tjooh, det kan være medions gerne vil dele(?) :)
Avatar billede andersasp Nybegynder
24. august 2005 - 16:27 #14
OK, tak til jer begge to!!
Avatar billede softspot Forsker
24. august 2005 - 16:29 #15
Tak for point :)
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
Kurser inden for grundlæggende programmering

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