Avatar billede bobbedude Nybegynder
10. november 2006 - 14:02 Der er 4 kommentarer og
2 løsninger

Arrg funktion og if sætning

Ja det er nok lidt lamt men jeg har:

PageImageType = "_Koer"

<%=RandomImage(16)%>

If PageImageType = "Koer" then
    function RandomImage(Images)
    RandomImage = "_Koer"&Int(Rnd*(Images))
    end function
End If   

If PageImageType = "Mark" then
    function RandomImage(Images)
    RandomImage = "_Mark"&Int(Rnd*(Images))
    end function
End If   

If PageImageType = "Koer" then
    function RandomImage(Images)
    RandomImage = "_Koer"&Int(Rnd*(Images))
    end function
End If   

If PageImageType = "Svin" then
    function RandomImage(Images)
    RandomImage = "_Svin"&Int(Rnd*(Images))
    end function
End If   

Uanset hvad jeg gør hopper den altid ned og køre den sidste funktion: "If PageImageType = "Svin" then"

hvorfor gør den det
Avatar billede cpufan Juniormester
10. november 2006 - 14:21 #1
PageImageType = "_Koer"

<%=RandomImage(16)%>

  function RandomImage(Images)
If PageImageType = "Mark" then    RandomImage = "_Mark"&Int(Rnd*(Images))
If PageImageType = "Koer" then  RandomImage = "_Koer"&Int(Rnd*(Images))
If PageImageType = "Svin" then RandomImage = "_Svin"&Int(Rnd*(Images))
If PageImageType = "Mark" then RandomImage = "_Mark"&Int(Rnd*(Images))
end function
Avatar billede ldanielsen Nybegynder
10. november 2006 - 15:40 #2
Årsagen er at du i alle tilfælde kalder en funktion der hedder RandomImage. Og hvordan der sen så ud?

Du definerer funktionen 4 gange (hvilket er MEGET forkert, og burder give en fejl), og den vælger så at bruge den sidste version.

Hvis du vil bruge en funktion kan det f.eks. gøres sådan:

Function RandomImage(Images)
  If PageImageType = "Koer" then RandomImage = "_Koer" & Int(Rnd*(Images))
  If PageImageType = "Mark" then RandomImage = "_Mark" & Int(Rnd*(Images))
  If PageImageType = "Svin" then RandomImage = "_Svin" & Int(Rnd*(Images))
End function


Eller bare:

Function RandomImage(PageImageType, Images)
  RandomImage = "_" & PageImageType & Int(Rnd*(Images))
End function

Hvad er Images forresten?
Avatar billede bobbedude Nybegynder
12. november 2006 - 00:27 #3
Images er antal altså eks. 16 billeder
Avatar billede bobbedude Nybegynder
13. november 2006 - 08:17 #4
Mange tak for hjælpen og forklaringen (Nu fatter selv jeg det :)

Jeg er lidt i tvivl om hvordan jeg fordeler point da jeg brugte cpufan kode men forstod hvad der gik galt ved at læse hvad ldanielsen skrev.

Er det ok at jeg deler 50/50 hvis ja kan ldanielsen så ikke lige smide et svar.
Avatar billede ldanielsen Nybegynder
15. november 2006 - 14:19 #5
Svar
Avatar billede bobbedude Nybegynder
16. november 2006 - 22:41 #6
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
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