Avatar billede n1 Nybegynder
20. maj 2003 - 21:19 Der er 42 kommentarer og
1 løsning

simpelt login kun med kodeord

jeg skal bruge et asp script med et login hvor koden skal bestå af 5 tilfældige tal (altså alle tal mellem 10000 og 99999)!
jeg fandt et login som virker meget godt og som jeg kan finde ud af: http://activedeveloper.dk/aspdigital/studies/login.asp hvis i kan lave om på den...
det kunnevære dejligt.
takker.
Avatar billede exe-s Nybegynder
20. maj 2003 - 21:33 #1
Skal den selv generere koden eller skal jeg bare finde på et tal...
Avatar billede n1 Nybegynder
20. maj 2003 - 21:38 #2
det skal bare være et hvilken som helst tal på 5 cifre
Avatar billede exe-s Nybegynder
20. maj 2003 - 21:38 #3
Her er brugernavnet bruger1 og passwordet er: 89487

http://www.microsort.dk/exp/Til_N1.rar
Avatar billede exe-s Nybegynder
20. maj 2003 - 21:39 #4
Du kan selv rette det i filen login_2000.mdb
Avatar billede n1 Nybegynder
20. maj 2003 - 21:43 #5
jag kan godt finde ud af at oprette en bruger, men der skal ikke være noget brugernavn, og så skalle det være alle tal mellem 10000 og 99999!
Avatar billede exe-s Nybegynder
20. maj 2003 - 21:45 #6
altså der skal være 99999 brugere???
Avatar billede n1 Nybegynder
20. maj 2003 - 21:51 #7
nej kodeordet skal bare være 5 cifre, så det vil være 89999 brugere!
Avatar billede exe-s Nybegynder
20. maj 2003 - 22:00 #8
ok så står jeg af.
Avatar billede oasen Nybegynder
21. maj 2003 - 08:34 #9
99.999 er jo også det højeste tal på 5 cifre!
Avatar billede oasen Nybegynder
21. maj 2003 - 08:48 #10
Function LavKode(LowerBound, UpperBound)
  Randomize
  LavKode = CInt(Rnd() * (UpperBound - LowerBound)) + LowerBound
End Function


Response.Write LavKode("10000", "99999")
Avatar billede n1 Nybegynder
21. maj 2003 - 09:32 #11
kan du ikke sætte det ind i en side?
jeg kan ikke helt finde ud af hvor jeg skal sætte det ind!
men det ser da godt ud...
Avatar billede oasen Nybegynder
21. maj 2003 - 09:44 #12
Jo, men så skal jeg lige forstå præcis, hvad du vil.
Hver bruger har jo, som du kan se, en post i tabellen med henholdsvis brugernavn og password.
Vil du have alle brugernavne erstattet med et tilfældigt tal mellem 10.000 og 99.999? - og i så fald hvorfor?
Avatar billede n1 Nybegynder
21. maj 2003 - 09:49 #13
det er fordi at brugerne har et tilfældigt 5 cifret nummer! så der skal bare være et felt hvor man kan skrive kodeordet!
Avatar billede oasen Nybegynder
21. maj 2003 - 09:55 #14
Vil du have en ekstra kolonne i tabellen, hvor der står et tilfældigt tal ud for hver bruger? Eller et ekstra formularfelt?
Avatar billede oasen Nybegynder
21. maj 2003 - 10:00 #15
Jeg kan slet ikke se idéen i det...
Avatar billede n1 Nybegynder
21. maj 2003 - 10:01 #16
nej der skal kun være et formular. der skal ikke være noget med brugernavn og password, i realiteten skal alle der indtaster et 5 cifret tal være i stand til at logge ind på siden
Avatar billede oasen Nybegynder
21. maj 2003 - 10:03 #17
Okay - 2 sek...
Avatar billede oasen Nybegynder
21. maj 2003 - 10:14 #18
Så skal du starte med at fjerne kolonnerne med brugernavn og password fra tabellen og i stedet tilføje en ny kolonne, som du kan kalde "Random" og sætte til typen Long Integer.

==============================================================

<%
' Hvis der er blevet trykket på knappen "Login"
If Request.ServerVariables("Request_Method") = "POST" Then
    strPWD = Trim(Request.Form("Adgangskode"))

    If Len(strPWD) > 0 And IsNumeric(strPWD) Then

        ' DSNLess forbindelse til databasen
        Set myConn = Server.CreateObject("ADODB.Connection")
        myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("login_2000.mdb")

        Set rs = myConn.Execute("SELECT UserID FROM Users WHERE Random = " & strPWD)

        If Not rs.EOF Then
            ' Hvis brugeren fandtes i databasen
            intUID = rs("UserID")
        Else
            ' Hvis brugeren ikke fandtes i databasen
            strERR = "Du blev ikke godkendt af systemet"
        End If

        ' Rydder op i vores connection objekt
        myConn.Close
        Set myConn = Nothing

        If Len(intUID) Then
            ' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
            Session("UserID") = intUID
            Response.Redirect("beskyttet.asp")
        End If
    Else
        ' Hvis der ikke var angivet brugernavn og adgangskode
        strErr = "Du skal angive en gyldig kode!"
    End If

    If Len(strErr) > 0 Then
        ' Her laves fejlmeddelsen om til rød skrift
        strErr = "<p><font color=red>" & strErr & "</font></p>"
    End If
End If
%>
<html><head>
<title>Login script</title>
</head><body>

<form method="POST" action="login.asp">
<p><font size="4">Angiv 5-cifret kode</font></p><%=strErr%>
<table border="0">
<tr>
<td width="50%">Kode:</td>
<td width="50%"><input type="password" name="Adgangskode" size="20"></td>
</tr>
</table>
<p><input type="submit" value="Login" name="Action"></p>
</form>

</body></html>
Avatar billede n1 Nybegynder
21. maj 2003 - 10:42 #19
http://www.panorama-biograferne.dk/nt/login.asp
kan du ikke lave databasen, jeg kan ikke få den til at lave 2 autonumber du kan sende den til min mail ( dadlnet_pgt@hotmail.com )
Avatar billede oasen Nybegynder
21. maj 2003 - 11:03 #20
Du skal da ikke have to gange autonummer.

Er sendt..
Avatar billede oasen Nybegynder
21. maj 2003 - 11:18 #21
Du bør i øvrigt også lige øge sikkerheden en smule. Din database kan downloades uden videre fra: http://www.panorama-biograferne.dk/nt/login_2000.mdb
Avatar billede n1 Nybegynder
21. maj 2003 - 11:21 #22
hvorfor virker det ikke?
Avatar billede oasen Nybegynder
21. maj 2003 - 11:25 #23
Det vil hjælpe MEGET, hvis du sagde, HVAD der ikke virker... :)
Avatar billede oasen Nybegynder
21. maj 2003 - 11:26 #24
Jeg går til frokost nu men kigger ind igen derefter.
Avatar billede n1 Nybegynder
21. maj 2003 - 11:28 #25
den skriver: Du blev ikke godkendt af systemet.
er det fordi den ikke har adgang til at rette i databasen, eller er det fordi jeg skal oprette brugerne først?
Avatar billede oasen Nybegynder
21. maj 2003 - 12:01 #26
Du skal først oprette brugerne. Hvis jeg f.eks. indtaster "76453" i feltet, får jeg ikke lov at komme ind, fordi der ikke eksisterer en post i tabellen, hvor Random er lig med dette tal.
Avatar billede oasen Nybegynder
21. maj 2003 - 13:03 #27
Kan du følge mig?
Avatar billede n1 Nybegynder
21. maj 2003 - 13:06 #28
jeg har prøvet at oprette en bruger der hedder: 76453 men det virker stadig ikke!!!
Avatar billede oasen Nybegynder
21. maj 2003 - 13:13 #29
Okay - prøv lige at ændre følgende:

strERR = "Du blev ikke godkendt af systemet"

- til:

strERR = "Du blev ikke godkendt af systemet - koden er: " & strPWD

- så vi kan se, om forespørgslen er rigtig.
Nu har du vel ikke sat de 76453 ind i kolonnen "UserID"...?
Avatar billede n1 Nybegynder
21. maj 2003 - 13:34 #30
nu virker det med: "76453" men hvordan laver jeg så de 89998 andre brugere?
Avatar billede oasen Nybegynder
21. maj 2003 - 13:56 #31
Jeg har stadig ikke forstået formålet med det, men hvis dit ønske er at indsætte poster, der går fra 10000 til 99999 i tabellen, kan du gøre det således:

For i = 10000 To 99999
  myConn.Execute("Insert Into Users (Random) Values (" & i & ")")
Next

Sæt lige dette i toppen for en sikkerheds skyld:

Server.ScriptTimeout = 500
Avatar billede n1 Nybegynder
21. maj 2003 - 13:57 #32
hvor skal jeg sætte det ind?
Avatar billede oasen Nybegynder
21. maj 2003 - 13:59 #33
Ovenstående skal du kun udføre én gang. Du kan bare sætte følgende ind på en tom side og kalde den EN GANG.

<%
Server.ScriptTimeout = 500

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("login_2000.mdb")

For i = 10000 To 99999
  myConn.Execute("Insert Into Users (Random) Values (" & i & ")")
Next

myConn.Close
Set myConn = Nothing
%>
Avatar billede n1 Nybegynder
21. maj 2003 - 14:39 #34
kan du ikke også lave den, jeg kan ikke få den til at virke!
tak...
Avatar billede oasen Nybegynder
21. maj 2003 - 14:44 #35
Hvad er det, du ikke kan få til at virke? Jeg har lige givet dig et komplet eksempel. Du skal kopiere ovenstående ind i en tom fil. Upload denne til serveren og kald den fra din browser EN gang, så der indsættes 90000 poster i tabellen.

Får du en fejlmeddelelse da?
Avatar billede n1 Nybegynder
21. maj 2003 - 14:52 #36
ja
Avatar billede n1 Nybegynder
21. maj 2003 - 14:52 #37
Avatar billede oasen Nybegynder
21. maj 2003 - 15:06 #38
Har du skriverettigheder til databasen?
Avatar billede n1 Nybegynder
21. maj 2003 - 15:09 #39
hvordan får jeg det? det skulle der være
http://www.zitechnet.dk/index.asp?lmid=wh&coid=whg
Avatar billede oasen Nybegynder
21. maj 2003 - 15:15 #40
Ja, jeg kan ikke helt se, hvad der skulle være galt...
Avatar billede n1 Nybegynder
21. maj 2003 - 15:16 #41
jeg skal på arbejde, så jeg er lige væk et par timer!!!
Avatar billede oasen Nybegynder
21. maj 2003 - 19:24 #42
Det kan jeg som sagt ikke helt se løsningen på, men du har vel egentlig også fået et godt svar på dit orindelige spørgsmål nu.
Avatar billede oasen Nybegynder
21. maj 2003 - 22:15 #43
Prøv at oprette et nyt spm ang. den skrivning til db'en, så er der sikkert nogen andre, der kan svare.
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