hjælp til sub
HejJeg prøver at køre nedenstående:
<%
Option Explicit
Sub CheckLogin(strBrugernavn, strKodeord)
Dim Conn, DSN, strSQL, rs
strBrugernavn = Replace(strBrugernavn, "'", "")
strKodeord = Replace(strKodeord, "'", "")
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("familiencaroe.mdb")
Conn.Open DSN
strSQL = "SELECT * FROM bruger WHERE brugernavn = '" & strBrugernavn & "' AND kodeord = '" & strKodeord & "'"
Set rs = Conn.Execute(strSQL)
If Not rs.eof Then
Response.Redirect "in.htm"
Else
Response.Redirect "login.asp?msg=" & Server.URLEncode("Kodeord forkert!")
End If
Conn.Close
Set Conn = Nothing
End Sub
Dim strBrugernavn, strKodeord
strBrugernavn = "" & Request.Cookies("LoginInfo")("Brugernavn")
strKodeord = "" & Request.Cookies("LoginInfo")("kodeord")
If strBrugernavn <> "" And strKodeord <> "" Then
CheckLogin(strBrugernavn, strKodeord)
Else
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
strBrugernavn = Request.Form("brugernavn")
strKodeord = Request.Form("kodeord")
CheckLogin(strBrugernavn, strKodeord)
End If
End If
%>
Men den fejler med en
Microsoft VBScript compilation error '800a0414'
Cannot use parentheses when calling a Sub
/login_check.asp, line 34
CheckLogin(strBrugernavn, strKodeord)
-------------------------------------^
1. Hvorfor det?
2. Det er noget jeg har fået lidt hjælp til at lave fra nielle og det er ikke testet før nu. Men en forklaring til denne linie kunne jeg også godt tænke mig:
strBrugernavn = "" & Request.Cookies("LoginInfo")("Brugernavn")
Hvorfor er det nødvendigt med en "" først.. kunne man ikke bare sige :
strBrugernavn = Request.Cookies("LoginInfo")("Brugernavn")
?
