Avatar billede madz15 Nybegynder
21. juli 2003 - 12:39 Der er 16 kommentarer og
1 løsning

Loginsystem søges.

Goddag.
Jeg har siddet og lavet et loginsystem i asp, og det virker perfekt, men jeg vil gerne have at hver bruger går til hver sin side eller ?id. Er der en der ligger inde med såden et script, eller kan ændre mit script, så skriv endelig.

Tak
Avatar billede nmh Nybegynder
21. juli 2003 - 12:43 #1
Jeg går ud fra, at du har en database, hvor du har gemt brugernes adgangskode. Så skulle det være en let sag, at gemme en refernce til en asp-side der også.
Og ændringerne i dit script er næppe store.
Drejer det sig om mange brugere?
Vi de væsentlige del her på siden.
Avatar billede nmh Nybegynder
21. juli 2003 - 12:44 #2
slåfejl: referencerne
Avatar billede madz15 Nybegynder
21. juli 2003 - 12:53 #3
Det er ikke vildt mange brugere, men der skal kunne oprettes nogle stykker. Nej der er ingen database, det hele står i asp-koden?
Avatar billede nmh Nybegynder
21. juli 2003 - 12:55 #4
Men så skla du blot, når du har identificeret brugeren dirigere ham/hende hen til den rigtige side.

Det bliver noget i stil med
if Bnavn="bruger1" then
  reponse.redirect("Bruger1.asp")
elseif
  ....
end if
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:02 #5
Du for lige koden, hvis du gider smide det ind?:

<%
dim brugernavn, password
brugernavn = request.form("brugernavn")
password = request.form("kodeord")
if brugernavn = "hansj" and password = "hjeppesen" then
session.contents("login") = 1
session.contents("logintidspunkt") = now
response.redirect "ok.asp"
else
session.contents("login") = 0
response.redirect "ok.asp"
end if
%>
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:05 #6
Er det sådanne her?

<%
dim brugernavn, password
brugernavn = request.form("brugernavn")
password = request.form("kodeord")
if brugernavn = "hansj" and password = "hjeppesen" then
session.contents("login") = 1
session.contents("logintidspunkt") = now
response.redirect "ok.asp"
else
session.contents("login") = 0
if Burgernavn="hansj" then
reponse.redirect("hansj.asp")
elseif
response.redirect "ok.asp"
end if
%>
Avatar billede nmh Nybegynder
21. juli 2003 - 13:21 #7
Nej ikke helt. Jeg går ud fra, at du vil sende hansj til siden hansj.asp, når hans password er i orden. Siden ok.asp, det var vel din gamle ok-side.
(husk iøvrigt at lave indrykninger, så koden bliver til at læse. Det er også en god ide altid at starte en side med Option Explicit. Det betyder at alle variable skal erklæres i dim-sætninger, med dels er det lettere at finde fejl og dels vil siden faktisk køre en smule bedre)

<%
dim brugernavn, password
brugernavn = request.form("brugernavn")
password = request.form("kodeord")
session.contents("login") = 1
session.contents("logintidspunkt") = now
if brugernavn = "hansj" and password = "hjeppesen" then
  response.redirect "Hansj.asp")
elseif brugernavn="OleN" then
  response.redirect "OleN.asp")
elseif ... sådan fortsættes med alle dine brugere
  ...
else 'Her havner du, hvis brugeren har kludret.
  session.contents("login") = 0
  reponse.redirect("Fejl.asp") 'evt send. på login tilbage til start
end if
%>
Avatar billede nmh Nybegynder
21. juli 2003 - 13:24 #8
et par parentesfejl: det skal være sådan:
response.redirect("side.asp")
Hvis brugerne kludrer er det nok bedst at sende ham tilbage til det sted, hvor han indtastede brugernavn og password.
evt kun et begrænset antal forsøg.
Avatar billede nmh Nybegynder
21. juli 2003 - 13:26 #9
jeg har glemt password-kontrollen ved oleN.

elseif brugernavn="OleN" and password="Olen17" then
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:32 #10
Sådan her?:
<% dim brugernavn, password

brugernavn = request.form("brugernavn")
password = request.form("kodeord")
session.contents("login") = 1
session.contents("logintidspunkt") = now

if brugernavn = "hansj" and password = "hjeppesen" then
response.redirect ("Hansj.asp")

elseif brugernavn="OleN" then
response.redirect ("OleN.asp")

else
session.contents("login") = 0
reponse.redirect("default.asp")

end if %>
Avatar billede nmh Nybegynder
21. juli 2003 - 13:35 #11
ja, men du skal også lige teste OleN for password. Altså:
elseif brugernavn="OleN" and password="OleNPW" then
  response.redirect ("OleN.asp")

(Husk nu at lave indrykninger)
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:47 #12
Nu virker det jo, men ikke når man skriver forkert.
Når man skriver forkert kode eller noget, så burde den skriver "Forkert", men den kommer med denne fejl:
Microsoft VBScript runtime error '800a01a8'

Object required: 'reponse'

/mads/timmerweb/intern/default.asp, line 126
Avatar billede nmh Nybegynder
21. juli 2003 - 13:50 #13
du skulle have skrevet response("default.asp") og ikke reponse
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:51 #14
response skal der jo stå :P
Nu virker det, men hvis man skriver forkert så refresher den bare, den skulle jo gerne skrive det med Forker login?
Avatar billede madz15 Nybegynder
21. juli 2003 - 13:54 #15
Fandt selv fejlen. Nu virker det :-)
Avatar billede nmh Nybegynder
21. juli 2003 - 13:57 #16
default.asp er det den side, hvor brugerne skriver deres brugernavn og password?
Hvis det er tilfældet er der to muligheder.
1. Du laver en nyside fejl.asp, som er magen til default.asp, men som blot informerer om fejlen.
eller
2. Du laver en sessions-variabel fejl, som du tester på  i din default-side, og afhængig af om den er tilstede eller ej skriver du en fejlmeddelelse ud.
Når der ikke er mange brugere er det ok at arbejde med sessionsvariable.
Avatar billede nmh Nybegynder
21. juli 2003 - 13:59 #17
ok. jeg takker for point.
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