10. oktober 1999 - 09:53Der er
19 kommentarer og 1 løsning
session-objekt i Perl?
Hvordan holder man styr på hvilke brugere som er logget ind med kodeord? I ASP kan man bruge session("userok") = true, men hvordan gør man i Perl? Er der også en eller anden slags "session"-ting, der tilhører de enkelte brugere?
Jeg har godt nok tænkt på cookie-ideen, men det må da kunne gøres uden. Hvad nu hvis brugerens browser ikke understøtter cookies, eller brugeren måske har slået dem fra, så kan han ikke blive godkendt. Det vil da være lidt dumt.
Ja, men sådan virker ASP og deres session-variabler. Alternativet er at have en id med som "hidden"-felt i forme, eller med som parameter på alle links. <A HREF="naeste.pl?id=2342321">
Nå for Søren. Det vidste jeg ikke. Bruger ASP bare cookies? Hmm. Ja okay, jeg kunne selvfølgelig overveje det med hidden-felter eller parametre, men så ville andre folk som brugte den samme computer vel kunne gå tilbage i cachen og læse kodeordet (eller hvad nu der måtte stå). Man kunne selvfølgelig sætte en udløbsdato, men ville browseren ikke alligevel vise dokumentet hvis den ikke kunne få adgang til den "rigtige" side på nettet?
Jo, men det er et problem med vigtige passwords. Hvis man siger at siden ikke skal gemmes, bliver den det nok heller ikke. Dog skal du nok ikke gemme passwordet i hverken cookie eller html, men en identifikation (tilfældigt nummer), der udløber når manden "logger ud", eller der er gået 10-20 minutter.
Forøvrigt - har du set i diverse Perl-arkiver om der er en pakke, der implementerer dette nogenlunde automatisk?
Når nu vi lige er ved at snakke om cookies, hvordan Søren sender man så en cookie til brugeren, når man også vil sende brugeren videre til en anden side i samme script? Jeg bruger print "Location: enside.html\n\n"; til at sende brugeren videre til en anden side, men for at sende en cookie er man (så vidt jeg ved) nødt til at sende en print "Content-type: text/html\n";. Men hvordan benytter man begge dele i samme script? Hvis man har content'en først, skrives location'en ud på skærmen, og hvis man har location'en først kommer browseren med et save download vindue, hvor den spørger hvor .pl files skal gemmes. Hvad kan man ellers gøre?
Åh, ja, det er den der HTTP-protokol. Nu om dage "snyder" jeg og bruger PHP og ASP, og der er det hele pakket ind. Hmm, jeg kan vel lige få kigget i min bog i morgen.
Hvis jeg husker rigtigt behøver man ikke ikke sende Content-type hvis man vil sætte en cookie.
Jeg skal kigge på det, men jeg skal lige hjem fra skolen først, og det bliver nok lidt sent, da der er cafe nu, og bagefter skal vi følges ned i byen...
Jeg har prøvet på mange forskellige måder nu, men jeg kan altså ikke få det til at virke. For at cookien skal virke, er det nødvendigt at sende et \n, men så vil location'en ikke virke! ØV! Jeg benytter Matt Wright's cookie ting (http://www.worldwidemart.com/scripts/) til at sætte cookies med, men den skulle virke fint. Jeg tror jeg vil prøve at kontakte ham, for at høre om han ved det. Jeg vender selvfølgelig tilbage hertil...
Jeg er ked af det, men jeg kan altså ikke få dit eksempel til at virke! Jeg har siddet de sidste par timer for at få det til at virke, jeg har prøvet med et perlscript men jeg har også selv prøvet at lave et Delphi program som dit, men det vil bare ikke virke! Mit problem er som det plejer, at skal jeg ha' cookien til at virke, skal der være to linieskift efter Set-Cookie'en, men så bliver Location'en bare skrevet ud på skærmen. Kan det måske have noget at gøre med at jeg bruger IIS 5.0 under Windows 2000 med Internet Explorer 5 og Perl version 5.et-eller-andet? Det kan måske være det, der gør det? Jeg har min side til at ligge på en Unix server, også med Perl 5.et-eller-andet, jeg vil prøve om det måske virker der. Det er da trods alt der det helst skulle virke. Det bliver bare lidt dyrt at skrive/teste sine scripts mens man er online, men jeg må jo prøve. Hvorfor printer du egentlig HTML kode ud til sidst i dit eksempel? Det skulle da helst ikke blive vist, når brugeren bliver redirectet til en anden side.
Hey, det var åbenbart problemet! Altså Windows 2000 eller IIS 5.0 eller noget i den stil, det virker helt fint når først det bliver uploaded til serveren. Mystisk. Det må altså være et eller andet som Windows 2000/IIS 5.0 ikke kan finde ud af at gøre rigtigt. Tja, så ved man jo det. Det var da noget skidt noget, så skal jeg være online for at afprøve mine scripts! ØV! Tak for hjælpen! Vil du ikke lige sende et eller andet som et svar, så skal du nok få dine point for din tålmodighed med en dum bruger (og hans dumme computer). Tak...
Nåh, HTML-koden var bare for at kunne afprøve uden redirection, og så er det jo også betryggende at se, at det *ikke* kommer ud...
Det kan sagtens være serveren (IIS 5), der jo godt kan smage lidt på headerne. Da jeg havde den der "HTTP/1.1"- linie stående ville Apache til Windows bestemt ikke sende siden videre.
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.