Avatar billede mbl Juniormester
19. oktober 2004 - 21:34 Der er 2 kommentarer og
1 løsning

prøver igen. Endnu et spm om login og ASP

Kan vi ikke tage den en gang til for den dumme her.

Jeg har fundet følgende kode som jeg vile bruge.

Jeg har oprette en side "Login.ASP" på min webserver som understøtter ASP.

----- kode -----

<html>
<title>Login</title>
<head>
</head>
<body>

<!-- <Script Language=VBScript> -->
<%
if request ("mode") = "login" then
' Opretter forbindelse til databasen
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("database.mdb")
Conn.Open DSN

'ændre imput
Login = Trim(Replace(Request.Form("Login"),"'","''" ))
Password = Trim(Replace(Request.Form("Password"),"'","''" ))

'Lavet af Jimmy Jacobsen www.webshadow.frip.dk
'Opbygger Sql-sætningen
rsSQL = "SELECT * FROM admin where Login = '" & Login & "' and Password = '" & Password & "'"

' hvis brugeren var i databasen
set rs = Conn.execute(rsSQL)
If Not (rs.BOF Or rs.Eof) Then
Session("ID") = rs("ID")
session("login") = True
Response.redirect "logged.asp"

Else

'
' Hvis brugeren ikke var i databasen
Response.redirect "Login.asp"


End If

' Lukker forbindelse til databasen
Conn.Close
Set Conn = Nothing

End if
%>
</Script>

<br>
<form method="post" action="login.asp">
<table border="0" cellspacing="0" width="228" height="125">
  <tr>
    <td width="78" height="40"><p>Brugernavn:</td>
    <td width="165" height="40"><input type="text" name="Login" size="20"></td>
  </tr>
  <tr>
    <td width="78" height="25">Password:</td>
    <td width="165" height="25">
    <input type="password" name="Password" size="20"></td>
</tr>
<input type="hidden" Name="Mode" Value="login"></td>
<tr>
    <td width="78" height="25"><input type="submit" value="Login"></td>
    </td>
</table>
</form>
</body>
</html>

---- kode slut ----

Jeg har oprette en database "database.mdb"

Når jer skriver en login og password og trykker på knappen for jeg følgende fejl melding.

---- fejl melding ---

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x15c8 Thread 0x1144 DBC 0x15f2abc Jet'.

/login.asp, line 13
Avatar billede eagleeye Praktikant
19. oktober 2004 - 21:47 #1
Den fejl kommer typisk fordi den ikke kan finde database filen i den angivne folder i connection strengen eller filnavnet er forkert.

Som du har skrevet det her, skal database filen ligge i samme folder som .asp filen gør den det?
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("database.mdb")

Det kan også være fordi IUSR_maskinnavn ikke har skriverettighed til enten folderen eller database filen.
Avatar billede mbl Juniormester
19. oktober 2004 - 22:04 #2
Takker for hjælpen, jeg skulle flytte databasen til samme mappe.

Hvad nu hvis jeg har en anden mappe som jeg gerne vil have min Mdb filer til at ligge i. Kan jeg det og evt. hvad er så stien.

Hvordan er sikkerhedsniveauet for en sådan login løsning.
Avatar billede balduren Nybegynder
19. oktober 2004 - 22:06 #3
Server.MapPath ("/hvorfilenligger/database.mdb") der skriver du stien og det smarteste efter min mening ville være at at have databasen i et biblotet som ikke er delt af webserveren
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