/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Array i Session
Fra : Rasmus Nielsen


Dato : 03-02-02 18:30

Hej,

Hvordan laver man en session-variabel, der indeholder et array, der består
af 4-cifrede varenumre? Hvad skriver man, når der skal tilføjes et tal til
dette array?

--
Venlig hilsen / Best regards,

Rasmus Nielsen.



 
 
Tony Lorentzen (04-02-2002)
Kommentar
Fra : Tony Lorentzen


Dato : 04-02-02 15:16

Hej Rasmus,

Det nemmeste er nok at kaste en strengværdi ind i session-variablen og så
splitte den når du skal læse i den.

Hvis du f.eks. har flg. stående i din session variabel:
"2345,2341,7232,1236,2347" kan du hive det ud og lave et array ved at gøre
således:

Dim myArray
myArray = Split(session("variabelnavn"),",")

God fornøjelse med det.

Mvh,

Tony

"Rasmus Nielsen" <postmaster@rasmusn.dk> wrote in message
news:3c5d7368$0$62871$edfadb0f@dspool01.news.tele.dk...
> Hej,
>
> Hvordan laver man en session-variabel, der indeholder et array, der består
> af 4-cifrede varenumre? Hvad skriver man, når der skal tilføjes et tal til
> dette array?
>
> --
> Venlig hilsen / Best regards,
>
> Rasmus Nielsen.
>
>



Rasmus Nielsen (04-02-2002)
Kommentar
Fra : Rasmus Nielsen


Dato : 04-02-02 17:37

> Hvis du f.eks. har flg. stående i din session variabel:
> "2345,2341,7232,1236,2347" kan du hive det ud og lave et array ved at gøre
> således:
>
> Dim myArray
> myArray = Split(session("variabelnavn"),",")

Det ser smart ud. Hvad er koden, hvis man vil tilføje et tal til
strengværdien?

--
Venlig hilsen / Best regards,

Rasmus Nielsen.



Janus Klok Lauritsen (04-02-2002)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 04-02-02 18:26

Du kunne vel lave noget ligende:

dinNyeVar = 7999 ' eller noget helt andet....
session("variabelnavn") = session("variabelnavn") & "," & dinNyeVar

Mvh
Janus

"Rasmus Nielsen" <postmaster@rasmusn.dk> wrote in message
news:3c5eb85f$0$62902$edfadb0f@dspool01.news.tele.dk...
> Det ser smart ud. Hvad er koden, hvis man vil tilføje et tal til
> strengværdien?




Rasmus Nielsen (04-02-2002)
Kommentar
Fra : Rasmus Nielsen


Dato : 04-02-02 18:49

> session("variabelnavn") = session("variabelnavn") & "," & dinNyeVar

Mange tak for for hjælpen. Findes der en tilsvarende man kan bruge, hvis man
ønsker at fjerne et tal fra stregen?

--
Venlig hilsen / Best regards,

Rasmus Nielsen.



Allan Ebdrup (04-02-2002)
Kommentar
Fra : Allan Ebdrup


Dato : 04-02-02 19:09

"Rasmus Nielsen" <postmaster@rasmusn.dk> wrote in message
news:3c5ec954$0$230$edfadb0f@dspool01.news.tele.dk...
> > session("variabelnavn") = session("variabelnavn") & "," & dinNyeVar
>
> Mange tak for for hjælpen. Findes der en tilsvarende man kan bruge, hvis
man
> ønsker at fjerne et tal fra stregen?

Så kunne du gøre noget a la:
session("variabelnavn") = Replace(session("variabelnavn"), "," &
intTalAtFjerne)
session("variabelnavn") = Replace(session("variabelnavn"), intTalAtFjerne &
",")

Grunden til at køre replace både med kommer før og efter er at du ikke kan
vide om tallet evt. står først eller sidst.
Vær også opmærksom på at alle forekomster af tallet bliver fjernet(*), og at
dette kun virker hvis det er tal (ikke vilkårlige strenge).

(*) Kan laves så der kun fjernes een forekomst.

MVH
Allan Ebdrup, 10-4 ApS
www.ti-fire.dk



Janus Klok Lauritsen (04-02-2002)
Kommentar
Fra : Janus Klok Lauritsen


Dato : 04-02-02 19:59

Som du skriver vil alle forekomster af tallet blive fjernet, så hvis din
streng var:
7999, 99, 899
og du forsøgte at fjerne 99.
Så ville din streng pludselig være:
79, 899
Sååå, måske skulle du overveje at f.eks. sætte , både før det første tal og
efter det sidste, og så lave:
session("variabelnavn") = Replace(session("variabelnavn"), "," &
intTalAtFjerne & ",", ",")
Når du skal lave dit array skal du så bare se bort fra det første og det
sidste tegn.
Hvorfor virker dette forresten kun ved tal ? Det kan jeg ikke lige se.
Mvh
Janus

"Allan Ebdrup" <ebdrup@ti-fire.dk> wrote in message
news:a3mimr$efk$1@news.cybercity.dk...
> "Rasmus Nielsen" <postmaster@rasmusn.dk> wrote in message
> news:3c5ec954$0$230$edfadb0f@dspool01.news.tele.dk...
> Grunden til at køre replace både med kommer før og efter er at du ikke kan
> vide om tallet evt. står først eller sidst.
> Vær også opmærksom på at alle forekomster af tallet bliver fjernet(*), og
at
> dette kun virker hvis det er tal (ikke vilkårlige strenge).




Allan Ebdrup (05-02-2002)
Kommentar
Fra : Allan Ebdrup


Dato : 05-02-02 11:55

Hej Janus
Kommentare inline

"Janus Klok Lauritsen" <janus@mcb.dk> wrote in message
news:a3mlfa$4jj$1@sunsite.dk...
> Som du skriver vil alle forekomster af tallet blive fjernet, så hvis din
> streng var:
> 7999, 99, 899
> og du forsøgte at fjerne 99.
> Så ville din streng pludselig være:
> 79, 899
> Sååå, måske skulle du overveje at f.eks. sætte , både før det første tal
og
> efter det sidste, og så lave:
> session("variabelnavn") = Replace(session("variabelnavn"), "," &
> intTalAtFjerne & ",", ",")

Yep, det var kode skudt fra hoften, der var en fejl. Din løsning retter den.

> Når du skal lave dit array skal du så bare se bort fra det første og det
> sidste tegn.
> Hvorfor virker dette forresten kun ved tal ? Det kan jeg ikke lige se.

Det er ikke så godt hvis de værdier man putte ind kan indeholde komma, så
vil Split funktionen ikke virke efter hensigten.
Man kan komme udenom problemerne (også uden hack), men det tager en del
kodning og så bliver spørgsmålet om det ikke bedre kan betale sig at arbejde
med rigtige Arrays, købe sig til et Both-threaded dictionary objekt, proppe
session data i en database (og fx benytte dictionary objektet på sidescope,
det gør opslag noget nemmere) eller noget helt fjerde.

MVH
Allan Ebdrup
www.ti-fire.dk




Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408852
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste