Administrationsmodul

Indlæs andet indhold på denne side:

Koden i administrator.asp

Siden er opdateret 16.12.2006

Øverst i filen er et asp-script, som kontrollerer, at man har legal adgang til at lave rettelser i hoveddatabasen:

<%
If Session("blnIsAdminGodkendt") = False or IsEmpty(Session("blnIsAdminGodkendt")) = True then
 Response.Redirect"default.asp"
End If
%>

Læg mærke til, at i denne adgangskontrol er session tildelt et andet ID end til login i de andre beskyttede sider. Dette for at almindelige brugere ikke kan liste sig ind til administrationen ad bagvejen.

Dernæst er et asp-script, som etablerer forbindelse til hoveddatabasen og som indsætter data fra formularen i databasen. Forbindelsen til databasen bruges allerede når siden indlæses - til en oplistning af databasens indhold:

<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3

' Etabler forbindelse til databasen
strMode = Request.QueryString("mode")
tempConn = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("../brugere.mdb") & ";UID=admin;PWD=;"

' Valider data fra formularen
If Request.Form("Gem") <> "" Then
strError = ""
strUserID = Trim(Request.Form("UserName"))
strPassword = Trim(Request.Form("UserPass"))

' Fejlmelding, hvis "userName" er tom
If Len(strUserID) = 0 Then
strError = "<li>Du skal skrive et brugernavn!</li>"

' Fejlmelding hvis "Password" er tom
ElseIf Len(strPassword) = 0 Then
strError = "<li>Du skal skrive et password!</li>"
End If

' Fortsæt, hvis alt er OK
If Len(strError) = 0 Then
Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM tblUsers WHERE (ID = 0)"
rs.Open strSQL, tempConn, adOpenKeyset, adLockOptimistic
If (rs.BOF Or rs.EOF) Then

' Indskriv ny bruger i databasen
rs.AddNew
rs("UserID") = Server.HTMLEncode(strUserID)
rs("Password") = Server.HTMLEncode(strPassword)
rs.Update
End If

' Luk databaseforbindelsen
rs.Close
Set rs = Nothing

' Hvis fejl, udskrives fejlmeldingen
Else
strError = "<p><ul style='color:#f00;'>" & strError & "</ul></p>"
strMode = "add"
End If
End If
%>

Herefter følger en helt almindelig html-side med DTD, head og body. I body inkluderes administrator.inc:

<!--#include file="administrator.inc"-->
Valid XHTML og CSS / Copyright © Hjemmesideskolen december 2006
Hjemmesideskolen
Du er her: Forsiden - scripts - asppass - Administrationsmodul
Brugere lige nu: 1
Home Mail