Avatar billede donslund Nybegynder
01. marts 2003 - 14:37 Der er 2 kommentarer og
1 løsning

loginboks

Kan man med asp fremkalde den almindelige loginboks som kendes fra windows? Den samme man får hvis man forsøger at tilgå et ftp-sted via browseren.
Avatar billede mortrr Praktikant
01. marts 2003 - 16:07 #1
Den er altså mere end 15 point værd, men skidt:

Function Base64Decode(base64String)  ' www.pstruh.cz
Const Base64CodeBase = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" 
Dim dataLength, Out, groupBegin 
dataLength = Len(base64String) 
Out = "" 
If dataLength Mod 4 <> 0 Then
    Err.Raise 1, "Base64Decode", "Bad Base64 string."
    Exit Function
  End If
  ' Now decode each group:
  For groupBegin = 1 To dataLength Step 4
    Dim numDataBytes, CharCounter, thisChar, thisData, groupData
    ' Each data group encodes up To 3 actual bytes.
    numDataBytes = 3
    groupData = 0
    For CharCounter = 0 To 3
      ' <B>Convert</B> each character into 6 bits of data, And add it To
      ' an integer For temporary storage.  If a character is a '=', there
      ' is one fewer data byte.  (There can only be a maximum of 2 '=' In
      ' the whole string.)
      thisChar = Mid(base64String, groupBegin + CharCounter, 1)
      If thisChar = "=" Then
        numDataBytes = numDataBytes - 1
        thisData = 0
      Else
        thisData = InStr(Base64CodeBase, thisChar) - 1
      End If
      If thisData=-1 Then
        Err.Raise 2, "Base64Decode", "Bad character In Base64 string."
        Exit Function
      End If
      groupData = 64 * groupData + thisData
    Next
    ' Convert 3-byte integer into up To 3 characters
    Dim OneChar
    For CharCounter = 1 To numDataBytes
      Select Case CharCounter
        Case 1: OneChar = groupData \ 65536
        Case 2: OneChar = (groupData And 65535) \ 256
        Case 3: OneChar = (groupData And 255)
      End Select
      Out = Out & Chr(OneChar)
    Next
  Next
  Base64Decode = Out
End Function

if Request.ServerVariables("HTTP_AUTHORIZATION") = "" then
  Response.Status = "401 Unauthorized"
  Response.Addheader "WWW-Authenticate", "BASIC Realm = Hov hov"
  Response.End
else
  Auth=Request.ServerVariables("HTTP_AUTHORIZATION")
  if left(Auth,6)="Basic " then
    userPass=split(Base64Decode(mid(Auth,7)),":")
    Response.Write "<br>Brugernavn:" & userPass(0)
    Response.Write "<br>Password:" & userPass(1)
  end if
end if

- Morten
Avatar billede donslund Nybegynder
01. marts 2003 - 16:22 #2
Hvordan er det lige, at alt det her kode ved hvem den skal lukke ind?
Avatar billede mortrr Praktikant
01. marts 2003 - 16:26 #3
Det ved den ikke noget om.
Men det blev der jo heller ikke spurgt om. ;-)

Brug userPass(0) og userPass(1) til at sammenligne med en database eller lignende.

- Morten
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