Avatar billede svinget Praktikant
21. juli 2006 - 11:52 Der er 18 kommentarer og
2 løsninger

Gemme værdi fra link i en session

Hej

Hvordan gemmer man en værdi fra et link i en session?

/Kim
Avatar billede thesurfer Nybegynder
21. juli 2006 - 11:56 #1
Lektion 10: Værdier af variabler i en URL - http://www.html.dk/tutorials/asp/lektion10.asp
Lektion 12: Sessions -  http://www.html.dk/tutorials/asp/lektion12.asp
Avatar billede keysersoze Ekspert
21. juli 2006 - 11:57 #2
session("navn") = Request.Querystring("din_querystring")
Avatar billede thesurfer Nybegynder
21. juli 2006 - 12:02 #3
Jeg tror at svinget har problemer med at læse.. for jeg var igang med at hjælpe ham/hende i http://www.eksperten.dk/spm/721643 .. med svinget hoppede fra, da jeg linkede til session-artiklen hos html.dk..
Avatar billede svinget Praktikant
21. juli 2006 - 12:08 #4
Nej - læse det kan jeg. Du misforstår mine hensigter.

Jeg forstod på dit svar at mit spørgsmål var "lidt off", så som jeg skrev så ville jeg omformulere det.
Jeg har læst tutorials på html og kan groft set følge tankegangen, men det er af og til svært at omsætte til eksempel man lige står og skal bruge det til. Det er sikkert pære let og gennemskueligt for jer det er inde i asp tankegangen, men det kan være lidt dvært for os andre ikke garvede asp personer.

Derfor er det en kanon hjælp at man kan trække på de dygtige "hajer" på eksperterne.dk
Avatar billede thesurfer Nybegynder
21. juli 2006 - 12:14 #5
Hmm.. Dengang jeg læste artiklerne, synes jeg at de var nemme, logiske og struktureret..

De starter med at nævne indholdet, og derefter vise små eksempler, og til sidst vise lidt større eksempler..

Nemmere kan det næsten ikke blive..

Spørgsmålet er om man vil lære det eller ej.

Jeg har været bruger på eksperten.dk i lang tid.. og i den tid, har jeg faktisk mødt folk der ville vide ting, men ikke gad lære om dem..
Avatar billede thesurfer Nybegynder
21. juli 2006 - 12:17 #6
PS: Jeg siger ikke at du er en af de folk.
Avatar billede svinget Praktikant
21. juli 2006 - 12:44 #7
Jeg prøver, men asp er lidt hysterisk. En enklt gnyf forkert og skidtet funker ikke.
Avatar billede svinget Praktikant
21. juli 2006 - 12:51 #8
Tilbage til spørgsmålet:
Betyder det at hvis jeg på side_a bruger dette link:
<a href="side_b.asp?module=pm">PM</a>

At jeg kan skrive det ind i en session på side b med
session("module") = Request.Querystring("module")

og bruge det i min selektion med denne på alle sider:
strSQL = "SELECT * FROM tabel WHERE module = '" & module & "'"

/Kim
Avatar billede thesurfer Nybegynder
21. juli 2006 - 13:00 #9
Nej :-)

Som der står på http://www.html.dk/tutorials/asp/lektion12.asp:

---

Jeg valgte at kalde elementet for "Starttidspunkt" - og gemte det ved at tilføje følgende linie til mit ASP-script:
<%
Session("Starttidspunkt") = Now
%>

...

Jeg kan på ethvert tidspunkt kalde elementet "Starttidspunkt" frem fra sessionen ved f.eks. at skrive:
<%
Response.Write Session("Starttidspunkt")
%>

---
Avatar billede svinget Praktikant
21. juli 2006 - 13:05 #10
Så er det fordi jeg tror man kan mere end muligt. Jeg ville sætte en værdi i en session ved at trykke på et link. Det er ikke muligt?
Avatar billede keysersoze Ekspert
21. juli 2006 - 13:07 #11
jo;

<a href="?test=1">klik</a>

og så kan du få værdien i din session med det før skrevne

session("test") = request.querystring("test")
Avatar billede svinget Praktikant
21. juli 2006 - 13:29 #12
Hmm - jeg kan ikke rigtig få det til at virker. Her sender jeg værdien til min session fra side a til side b:
<a href="observations_display_module.asp?module=pm">PM</a>

på side b sætter jeg værdien i min session og bruger den i min selektion:
<%
session("module") = request.querystring("module")
Session.LCID=1030
strSQL = "Select * from sap_upgrade where module1 = '" & module & "' order by module1 asc"
set sap_upgrade = Conn.Execute(strSQL)
do while not sap_upgrade.eof%>                       

Jeg har lagt denne ind for at tjekke om jeg sætter en værdi:
<%                   
                      if session("module") <> "" then
  response.write "du har valgt kategorien: "&session("module")
else
  response.write "du har ikke valgt nogen kategori endnu"
end if
%> 

og jeg sætter en katagori: PM

Men den finder ingen værdier - hvad gør jeg galt?
Avatar billede thesurfer Nybegynder
21. juli 2006 - 13:48 #13
[Så er det fordi jeg tror man kan mere end muligt. Jeg ville sætte en værdi i en session ved at trykke på et link. Det er ikke muligt?]
Svar: Nej. Ikke direkte.

ASP afvikles når en side loades. Du kan ikke afvikles ASP kode direkte.

Dvs, dit links skal loade en side, som sætter session værdien. Når det er gjort, kan du aflæse værdien.
Avatar billede thesurfer Nybegynder
21. juli 2006 - 13:50 #14
Du har en fejl i denne linie:

strSQL = "Select * from sap_upgrade where module1 = '" & module & "' order by module1 asc"

Du bruger værdien fra en variabel, ikke fra en session.

Som jeg skrev i 21/07-2006 13:00:39, skal du bruge session("module").
Avatar billede svinget Praktikant
21. juli 2006 - 14:11 #15
Jeg har lidt svært ved hvormår man bruger ' & () " osv.

Jeg har prøvet lidt af hvert, men det virker ikke. Hvad er der galt her:
strSQL = "Select * from sap_upgrade where module1 = '" & session("module") & "' order by module1 asc"
Avatar billede keysersoze Ekspert
21. juli 2006 - 14:25 #16
du må næsten få en fejlmelding?
Avatar billede svinget Praktikant
21. juli 2006 - 14:34 #17
Jeg havde prøvet en del forskelligt - nok til at skabe forvirring for mig selv. Det virker nu :)

Tak for hjælpen - poster i et svar?
Avatar billede keysersoze Ekspert
21. juli 2006 - 14:55 #18
svar.
Avatar billede thesurfer Nybegynder
21. juli 2006 - 16:06 #19
Svar.
Avatar billede svinget Praktikant
26. juli 2006 - 17:39 #20
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