/ 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
Login, kun brugernavn!
Fra : Ukendt


Dato : 08-08-03 21:08

Hej!
Er der nogle der kan fortælle mig hvordan man laver en login i ASP,
der kun skal bestå af brugernavn og ikke nogle kode.
Det skal være sådan når man f. eks skriver.
Bruger1 kommer man til side 1
Bruger2 kommer til side 2, og så vider.

Jeg har kikket meget på nettet efter nogle gode script, f. eks
http://www.activedeveloper.dk/ men det er alt sammen men Brugernavn og
adgangskode.
Og jeg kan ikke finde du af at rette i dem så det kun er brugernavn
der står der

Håber der er nogle der kan hjælpe mig.


 
 
Jakob Andersen (08-08-2003)
Kommentar
Fra : Jakob Andersen


Dato : 08-08-03 21:29

Henrik skrev:
> Er der nogle der kan fortælle mig hvordan man laver en login i ASP,
> der kun skal bestå af brugernavn og ikke nogle kode.
> Det skal være sådan når man f. eks skriver.
> Bruger1 kommer man til side 1
> Bruger2 kommer til side 2, og så vider.



Hvis du har et mindre antal brugere kan du gøre sådan her:

---------------------------------------------
<%
Dim Page
Select Case Request.Form("Brugernavn")
Case "Bruger1"
Page = "side1.asp"
Case "Bruger2"
Page = "side2.asp"
Case "Bruger3"
Page = "side3.asp"
Case Else
Page = "fejl.asp"
End Select

Session("Page") = Page

Response.Redirect(Page)
%>
<html>
<head>
<title>Loginside</title>
</head>
<body>
<form method="post">
<input type="text" name="Brugernavn" />
<input type="submit" />
</form>
</body>
</html>

---------------------------------------------

Hvis du har et større antal brugere kan du kombinere det med en database
eller evt. blot en tekstfil. Dog skal du huske at tjekke på de enkelte
sider at brugeren har adgang til dem, f.eks. ved at tjekke om sidens
navn er lig med siden i Sessionvariablen page(der er sat i ovenstående
eksempel), ellers kan man jo blot gætte sig frem til siden.

Dog er det hvis oplysningerne der er tilgængelige er følsomme en god ide
at supplere med et password især hvis brugernavnene er nummerisk
fortløbende eller på anden måde lette at gætte.

--
Jakob Andersen

Ukendt (09-08-2003)
Kommentar
Fra : Ukendt


Dato : 09-08-03 10:52

Mange tak for svaret.
Jeg har kikket på det, men kan ikke rigtig få det til at virke.
Loginet skal være på forsiden i filen index.htm, skal den hedde asp i
stedt?
Og hvad med de sider brugeren skal henvise til skal jeg tilføje noget
til dem, og skal jeg kalde dem *.asp?


>Hvis du har et mindre antal brugere kan du gøre sådan her:
>
>---------------------------------------------
><%
> Dim Page
> Select Case Request.Form("Brugernavn")
> Case "Bruger1"
> Page = "side1.asp"
> Case "Bruger2"
> Page = "side2.asp"
> Case "Bruger3"
> Page = "side3.asp"
> Case Else
> Page = "fejl.asp"
> End Select
>
> Session("Page") = Page
>
> Response.Redirect(Page)
>%>
><html>
> <head>
> <title>Loginside</title>
> </head>
><body>
><form method="post">
> <input type="text" name="Brugernavn" />
> <input type="submit" />
></form>
></body>
></html>
>
>---------------------------------------------
>
>Hvis du har et større antal brugere kan du kombinere det med en database
>eller evt. blot en tekstfil. Dog skal du huske at tjekke på de enkelte
>sider at brugeren har adgang til dem, f.eks. ved at tjekke om sidens
>navn er lig med siden i Sessionvariablen page(der er sat i ovenstående
>eksempel), ellers kan man jo blot gætte sig frem til siden.
>
>Dog er det hvis oplysningerne der er tilgængelige er følsomme en god ide
>at supplere med et password især hvis brugernavnene er nummerisk
>fortløbende eller på anden måde lette at gætte.


Dcasso (09-08-2003)
Kommentar
Fra : Dcasso


Dato : 09-08-03 11:07

On Sat, 09 Aug 2003 11:51:59 +0200, Henrik <> wrote:

>Mange tak for svaret.
>Jeg har kikket på det, men kan ikke rigtig få det til at virke.
>Loginet skal være på forsiden i filen index.htm, skal den hedde asp i
>stedt?

Korrekt.

>Og hvad med de sider brugeren skal henvise til skal jeg tilføje noget
>til dem, og skal jeg kalde dem *.asp?

Det skal du hvis du vil være sikker på at besktte filerne. Men ellers
så kan du bare bruge specielle filnavne, som adskiller de enkelte
brugere, det vil give en ok sikkerhed og vil ikke kræve noget kode i
alle filer.

Dennis

Ukendt (09-08-2003)
Kommentar
Fra : Ukendt


Dato : 09-08-03 17:46

Hvorfor går den direkte til fejl.asp når jeg åbener index.asp?

><%
> Dim Page
> Select Case Request.Form("Brugernavn")
> Case "Bruger1"
> Page = "side1.asp"
> Case "Bruger2"
> Page = "side2.asp"
> Case "Bruger3"
> Page = "side3.asp"
> Case Else
> Page = "fejl.asp"
> End Select
>
> Session("Page") = Page
>
> Response.Redirect(Page)
>%>
><html>
> <head>
> <title>Loginside</title>
> </head>
><body>
><form method="post">
> <input type="text" name="Brugernavn" />
> <input type="submit" />
></form>
></body>
></html>


Torben Brandt (09-08-2003)
Kommentar
Fra : Torben Brandt


Dato : 09-08-03 17:58

Henrik wrote:
> Hvorfor går den direkte til fejl.asp når jeg åbener index.asp?

Fordi Request.Form("Brugernavn") er tom første gang, og derfor ender den
i Case Else.
Jeg har indsæt to ekstra linier herunder:

>><%

If Request.Form("Brugernavn") <> "" Then

>> Dim Page
>> Select Case Request.Form("Brugernavn")
>> Case "Bruger1"
>> Page = "side1.asp"
>> Case "Bruger2"
>> Page = "side2.asp"
>> Case "Bruger3"
>> Page = "side3.asp"
>> Case Else
>> Page = "fejl.asp"
>> End Select
>>
>> Session("Page") = Page
>>
>> Response.Redirect(Page)

End If

>>%>
>><html>
>> <head>
>> <title>Loginside</title>
>> </head>
>><body>
>><form method="post">
>> <input type="text" name="Brugernavn" />
>> <input type="submit" />
>></form>
>></body>
>></html>

mvh Torben


Ukendt (09-08-2003)
Kommentar
Fra : Ukendt


Dato : 09-08-03 19:48

Mange tak for det, det virkede, men

Nu har jeg et problem med at komme ind på de sidder når jeg skriver
brugernavnet ind.
Når jeg skriver Bruger1 siger den "Siden kan ikke vises" HTTP 405 -
Ressourcen er ikke tilladt
Internet Information Services.

>Fordi Request.Form("Brugernavn") er tom første gang, og derfor ender den
>i Case Else.
>Jeg har indsæt to ekstra linier herunder:
>
>>><%
>
>If Request.Form("Brugernavn") <> "" Then
>
>>> Dim Page
>>> Select Case Request.Form("Brugernavn")
>>> Case "Bruger1"
>>> Page = "side1.asp"
>>> Case "Bruger2"
>>> Page = "side2.asp"
>>> Case "Bruger3"
>>> Page = "side3.asp"
>>> Case Else
>>> Page = "fejl.asp"
>>> End Select
>>>
>>> Session("Page") = Page
>>>
>>> Response.Redirect(Page)
>
>End If
>
>>>%>
>>><html>
>>> <head>
>>> <title>Loginside</title>
>>> </head>
>>><body>
>>><form method="post">
>>> <input type="text" name="Brugernavn" />
>>> <input type="submit" />
>>></form>
>>></body>
>>></html>
>
>mvh Torben


Torben Brandt (10-08-2003)
Kommentar
Fra : Torben Brandt


Dato : 10-08-03 01:04

Henrik wrote:
> Nu har jeg et problem med at komme ind på de sidder når jeg skriver
> brugernavnet ind.
> Når jeg skriver Bruger1 siger den "Siden kan ikke vises" HTTP 405 -
> Ressourcen er ikke tilladt
> Internet Information Services.

>>>>Dim Page
>>>>Select Case Request.Form("Brugernavn")
>>>>Case "Bruger1"
>>>> Page = "side1.asp"
>>>>Case "Bruger2"
>>>> Page = "side2.asp"
>>>>Case "Bruger3"
>>>> Page = "side3.asp"
>>>>Case Else
>>>> Page = "fejl.asp"
>>>>End Select
>>>>
>>>>Session("Page") = Page
>>>>
>>>>Response.Redirect(Page)

Er du sikker på at siden "side1.asp" eksisterer og er placeret i samme
mappe på samme server? Hedder den .asp og ikke .html?

PS Husk venligst at skrive under det du svarer på og klippe overflødige
afsnit væk.

/Torben


Ukendt (10-08-2003)
Kommentar
Fra : Ukendt


Dato : 10-08-03 08:07

Torben Brandt wrote:
>Er du sikker på at siden "side1.asp" eksisterer og er placeret i samme
>mappe på samme server? Hedder den .asp og ikke .html?
Ja side 1 hedder side1.asp og ligger samme sted som Index.asp (Login
siden)
Men side1.asp er et tomt html dokument, jeg har bare kaldt den asp. Er
det ikke godt nok?
>
>PS Husk venligst at skrive under det du svarer på og klippe overflødige
>afsnit væk.
Ok, ska' nok

Hilsen Henrik

Torben Brandt (10-08-2003)
Kommentar
Fra : Torben Brandt


Dato : 10-08-03 10:12

Henrik wrote:
> Torben Brandt wrote:
>
>>Er du sikker på at siden "side1.asp" eksisterer og er placeret i samme
>>mappe på samme server? Hedder den .asp og ikke .html?
>
> Ja side 1 hedder side1.asp og ligger samme sted som Index.asp (Login
> siden)
> Men side1.asp er et tomt html dokument, jeg har bare kaldt den asp. Er
> det ikke godt nok?

Problemet er at der i form-tagget ikke er specificeret en
action-attribut. Når der ikke er det, så bliver formen (vist nok) sendt
til samme URL som der står i adresselinien.
Hvis du tilgår din side med http://min.side/index.asp så virker det nok,
men hvis du kun skriver http://min.side/ så duer det ikke.
Man kan ikke sende data fra en form til en mappe, selv om mappen er
synonym med index.asp-filen...

Løsningen er at erstatte
<form method="post">
med
<form action="index.asp" method="post">

/Torben


Ukendt (10-08-2003)
Kommentar
Fra : Ukendt


Dato : 10-08-03 19:29

Torben Brandt wrote:

>Problemet er at der i form-tagget ikke er specificeret en
>action-attribut. Når der ikke er det, så bliver formen (vist nok) sendt
>til samme URL som der står i adresselinien.
>Hvis du tilgår din side med http://min.side/index.asp så virker det nok,
>men hvis du kun skriver http://min.side/ så duer det ikke.
>Man kan ikke sende data fra en form til en mappe, selv om mappen er
>synonym med index.asp-filen...
>
>Løsningen er at erstatte
> <form method="post">
>med
> <form action="index.asp" method="post">
Jep så virker det!
Mange tak for hjælpen.
Hilsen Henrik


Søg
Reklame
Statistik
Spørgsmål : 177551
Tips : 31968
Nyheder : 719565
Indlæg : 6408825
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste