I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Du bruge et array eller et dictionary object. Hvad skal du bruge det til? Hvis du har en masse "a1", "a2" osv. felter i din tabel, tyder det på et dårligt databasedesign.
Synes godt om
Slettet bruger
24. juli 2004 - 08:58#2
Dårlig databasedesign vil jeg ikke afvise - det er ikke just min stærkeste side :)
Jeg har en stor formular, der afviger iht. indholdet, afhængig af brugertype. Derfor har jeg i en HTML-table defineret samtlige felter som et regneark med kollonner a, b, c osv, der stiger i værdi for hver row.
Hvis en bestemt bruger logger på, skal der i felterne fremkomme checkbokse vist i et grafisk design
for i = 1 to 31 ("a"+i)=rs("a"+i) IF ("a"+i)=="True" THEN ("a"+i)=="<img src='jatak'>" ELSE ("a"+i)=="<img src='nejtak'>" END IF next
hvorimod en anden bruger skal have mulighed for at ændre denne værdi:
for i = 1 to 31 ("a"+i)=rs("a"+i) IF ("a"+i)=="True" THEN ("a"+i)=="<input name='"&(a+i)&"' type='checkbox' value='checkbox' checked>" ELSE ("a"+i)=="<input name='"&(a+i)&"' type='checkbox' value='checkbox'>" END IF next
Jeg ville nok foretrække at fjerne de 31 kolonner fra tabellen og i stedet benytte en seperat tabel til dette, der refererer til din primærenøgle i din eksisterende tabel. Her kan du nøjes med to kolonner. En til fremmednøglen og et talfelt, der kan rumme værdier fra 1 til 31. Indsættes en post med dertilhørende nummer, kan det betragtes som sand (flueben sat) - i modsat fald som falsk (intet flueben).
Synes godt om
Slettet bruger
24. juli 2004 - 10:23#4
Ja - du har sikkert ret - problemet er, at der i forvejen er mange poster som allerede er fyldt ud, så i denne omgang bliver databasen som den er :(
Men findes der et svar på mit spørgsmål uanset dårlig struktur eller ej. Kan jeg oprette variable dynamisk i et loop
F.eks denne i en løkke med værdi fra 1 til 31:
a1=rs("a1") IF NOT edit="True" THEN
IF a1 = "TRUE" THEN a1="<img src='ok.gif'>" ELSE a1=" " END IF
ELSE
IF a1 = "TRUE" THEN a1="<input name='a1' type='checkbox' value='True' checked>" ELSE a1="<input name='a1' type='checkbox' value='False'>" END IF
Ville det ikke være nemmest med et array, som jeg har foreslået?
Synes godt om
Slettet bruger
24. juli 2004 - 10:41#6
Det er jer der er eksperterne - så hvis du mener at et array vil være nemmest, køber jeg den - problemet er bare at jeg ikke lige ved hvordan jeg skal lave det..??
' hent data fra databasen, og put den i variablen "arr" for i = 1 to 31 arr = arr & rs("a" & i) & "," next
' fjern det sidste ",": arr = left(arr, len(arr) - 1)
' lav variablen "arr" om til et array: arr = split(arr, ",")
' check og lav indholdet om til enten "Ja" (True) eller "Nej" (False): for i = 0 to ubound(arr) if arr(i) = "True" then arr(i) = "Ja" else arr(i) = "nej" end if next
Hvis du vil have fat på a13, hedder den nu arr(12). Dvs, "arr" og "selve tallet minus 1".
Eksempler: a4 = arr(3) a31 = arr(30) osv..
Det er fordi et array starter ved 0, og ikke 1.
Synes godt om
Slettet bruger
26. juli 2004 - 10:45#13
Det ved jeg ;) Jeg er vant til at arbejde med array's i Flash Actionscript - kendte bare ikke lige syntaxen her i asp - endnu en gang tak for hjælpen :)
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.