08. marts 2003 - 22:03Der er
52 kommentarer og 1 løsning
login system
Jeg har lagt et login system ind på min side som... og det virker også som det skal .. men mit problem er at , jeg har gjordt sån at man kommer ind på en side hvis man kan logge ind (altså har pass og brugernavn) , men man kan jo bare gå op og adresse og så bare skrive siden og så man inde på den og man behøver derfor ikke logge ind... Kan jeg ikke gøre sån at man ikke bare kan skrive hele linket for at komme ind , men man SKAL først igennem login før man har adgang ? håber i forstår ......
Du kan sætte en cookie når man logger ind. I alle sider kan du starte med at checkke om de cookie forfindes. Hvis ja, så kommer siden normalt, hvis ikke bliver man "smidt" ud til startsiden.
I det brugeren er logget ind skal du sætte en Session variabel.. Det kunne fx. se sådan her ud:
If strBrugernavn = Request.Form("Brugernavn") And strPassword = Request.Form("Password") Then Session("Status") = "Ok" Else Response.Write("Dit password eller brugernavn var forkert!") End If
Og så på alle de sider du vil ha' "beskyttet" sætter du bare flg. linje ind i toppen af dokumentet. <% If Not Session("Status") = "Ok" Then Response.Redirect("Du_Er_Ikke_Logget_Ind.asp") End If %>
medions >> Altås skal If strBrugernavn = Request.Form("Brugernavn") And strPassword = Request.Form("Password") Then Session("Status") = "Ok" Else Response.Write("Dit password eller brugernavn var forkert!") End If - sættes i login.asp filen eller på den side hvor han blir ført hen ?
blyon >> jeg må ærligt indrømme at jge ikke rigtigt fatter det.... da jeg ikke er den mest hardcore til den slags .... Men hvis jeg sender filerne kan du så evt. fixe det ? jeg vil gerne give fler points for det ?
Hvis du lige kan overskue at gennemlæse linksne nu, så skal du bare bruge medions bud:
I din login fil sætter du følgende ind: If strBrugernavn = Request.Form("Brugernavn") And strPassword = Request.Form("Password") Then Session("Status") = "Ok" Else Response.Write("Dit password eller brugernavn var forkert!") End If
Så ligger den en cookie på brugererns maskine om at det er ok han er logget ind.
Øverst på alle dine andre sider sætter du bare følgende ind:
<% If Not Session("Status") = "Ok" Then Response.Redirect("") End If %>
Så er det første den gør at checkke:"Er denne person OK at lukke ind på denne side ??" og da cookien "status" siger OK kommer man videre. Ellers bliver man smidt hen til "Du_Er_Ikke_Logget_Ind.asp", som ligeså godt kunne være din default side..
Hmmmmm, har lige prøvet .... prøvede også før det blev skrevet, men jeg kan ikke få det til at virke...... Er der ikke muligt du kan gøre det hurtigt hvis du lige får filerne ? vil gerne give så mange points som du forlanger ?
Så skal du nok nærmere have fat i medions, han har nok væsentligt mere check på det en jeg har.. (Har ikke lavet et login system siden jeg var tvunget i skolen for en 3-4 år siden)
På denne side tjekker den om man er fået sat koden OK. Hvis man har det får man en besked om det. Hvis ikke bliver man sendt videre til "Hatten är din" Prøv at klikke på den:
<% ' hvis værdien i vores session ikke er lig True så sendes man videre til loginfilen If Session("login") <> "JA" then Response.Redirect "../hatten" End if %>
DU HAR SØRME VÆRET PÅ KODESIDEN FØRST :-)
</body> </html>
Og kodesiden:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Bemærk jeg har sat session.Timeout til 2. Dette er minutter og er hvor længe at den skal "leve" den kan sættes op og ned som det passer dig. Hvis du ikke benytter den er den default 20 minutter (så vidt jeg husker)...
Det er fordi den du skrev; <%If Session("login") <> "Authed" then Response.Redirect "index.htm" End if%> , var forkert skrevet med "index.htm" den skulle hede "index.html" istedet .....
det virker fint nok, men mangler bare lige fejlen som du kan se jeg har ksrevet at den sender mig til http://www.friserverplads.dk/duadu/pics.htm når koden er skrevet rigtigt .....
Jo nu har jeg den efter at have uploader alle filerne om ..... Men først man har logget ind 1 gang før... så behøver man ik log ind igen ? for at se siden.......... jeg mener hvis man har logget på kan man jo bare skrive http://www.friserverplads.dk/duadu/pics.asp og så går den idn på siden .... Men prøv lige at se om du kan komme herind; http://www.friserverplads.dk/duadu/pics.asp
Sig lige hvor mange points du ville have for alt det her ? jeg er villig til det højste bare sig løs, for nu har du jo hjulpet mig godt og grundigt igennem :)
Jeg kan ikke finde ud af at kode en logout ... men ellers mange tak :) men hvis det bare er: <% ' slet værdierne i alle sessions Session.Abandon ' og videresend brugeren Response.Redirect "HVOR_DU_VIL_HEN_EFTER_LOGOUT.HTML" %> for at jeg har et logout så endelig sig til :)
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.