Avatar billede jenskf5 Nybegynder
09. marts 2002 - 13:49 Der er 5 kommentarer og
1 løsning

Programmering af metode

Hej

Jeg har et video-system, som nu skal udvides med mange flere videotitler.

Sådan som systemet ser ud nu, gøres det på slave-måde. Systemet udvides nemlig med en ny titel ved at kopiere nedenstående if-sætning og indstætte den lidt længere ned, hvorefter dens "videotitelNavn" bliver forhøjet med et.

Det er også OK, hvis man har få titler, men da det ikke er tilfældet længere, bliver det et kæmpe kopierings- og tilretnings-arbejde - hvilket ikke er ønskværdigt.

Så kan du ikke hjælpe mig med at programmere en metode, som kan klare alt dette, ud fra de variablenavn osv. som findes nedenstående?

<%
videotitelNavn1 = """An Age of Miracles"""
videotitelNavn2 = """The Future is Bright"""
videotitelNavn3 = """National Press Club Video"""
videotitelNavn4 = """Four Hour Disclosure-witness Video"""

if Request.QueryString("videotitel1") And videotitler = "" Then
    videotitler = videotitelNavn1
else
    'DA DER FINDES EN FORANSTÅENDE VIDEOTITEL, SKAL DER INDSÆTTES ET KOMMA MELLEM DEM
    videotitler = videotitler & ", " & videotitelNavn1
end if

if Request.QueryString("videotitel2") And videotitler = "" Then
    videotitler = videotitelNavn2
else
    'DA DER FINDES EN FORANSTÅENDE VIDEOTITEL, SKAL DER INDSÆTTES ET KOMMA MELLEM DEM
    videotitler = videotitler & ", " & videotitelNavn2
end if

if Request.QueryString("videotitel3") And videotitler = "" Then
    videotitler = videotitelNavn3
else
    'DA DER FINDES EN FORANSTÅENDE VIDEOTITEL, SKAL DER INDSÆTTES ET KOMMA MELLEM DEM
    videotitler = videotitler & ", " & videotitelNavn3
end if

.
.
.
%>
Avatar billede coltau Juniormester
09. marts 2002 - 16:20 #1
Jeg forstår ikke helt hvordan ovenstående virker og hvordan du vil have det til at virke.

Har du en database. ?
Vil du have en ASP-side hvor du kan indtaste nye titler. ?
Hvor skal de gemmes. ?
Avatar billede jenskf5 Nybegynder
09. marts 2002 - 16:45 #2
Nej, det er meget mere simpelt end det - ingen database, ingen admin-modul osv.

Metoden, som jeg søger, skal kunne gøre tage værdien fra QueryString "videotitel1" og fortsætte helt op til f.eks. QueryString "videotitel99". Altså på en mere smart måde, end min ovenstående kode gør det, fordi hvis jeg skulle fortsætte på den slave-måde, ville jeg have kopieret mig til døde.

Egentligt handler det bare om at få

if Request.QueryString("videotitel1")

til at vokse med et point pr. gennemkørsel. Hvordan gøres det? For hvis man skriver

if Request.QueryString(videotitelX)

tror den, at det er et array.
Avatar billede coltau Juniormester
09. marts 2002 - 16:54 #3
Dim videotitelNavn(99) ' Gør plads til 99 titler

videotitelNavn(1) = """An Age of Miracles"""
videotitelNavn(2) = """The Future is Bright"""
videotitelNavn(3) = """National Press Club Video"""
videotitelNavn(4) = """Four Hour Disclosure-witness Video"""

for i = 1 to 99
  if Request.QueryString("videotitel" & CStr(i)) And videotitler = "" Then
    videotitler = videotitelNavn(i)
  else
    'DA DER FINDES EN FORANSTÅENDE VIDEOTITEL, SKAL DER INDSÆTTES ET KOMMA MELLEM DEM
    videotitler = videotitler & ", " & videotitelNavn(i)
  end if
next

Jeg har måske ikke helt forstået - men har prøvet at lave noget i henhold til dit eget eksempel ovenover.
Avatar billede jenskf5 Nybegynder
09. marts 2002 - 16:57 #4
Nåååå, det skriver sådan:
Request.QueryString("videotitel" & CStr(i))

Ak ja, hvor har jeg prøver meget, for at få det til at virke.

Jeg vender tilbage.
Avatar billede jenskf5 Nybegynder
09. marts 2002 - 16:58 #5
Fejl - jeg mente:

"Nåååå, det skrives sådan:"
Avatar billede jenskf5 Nybegynder
09. marts 2002 - 17:18 #6
Det virker - smukt - 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