webForumDet fria alternativet

Returnera från VB komponent

10 svar · 242 visningar · startad av Erik Juhlin

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#1

Om man skriver så här i en VB komponent. Hur returneras det sen? Vad skiver man i ASP koden?

Public Function Login(ByVal sMemberName As String, _
    ByVal sPassword As String) As Boolean

    On Error GoTo errorHandler

    Dim rs As ADODB.Recordset
    Set rs = GetMemberByName(sMemberName)

    Login = ValidatePassword(sMemberName, sPassword, rs("Password"))

    Set rs = Nothing

    CtxSetComplete
    Exit Function

errorHandler:
    Set rs = Nothing
    HandleError g_modName, "Login"
End Function

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

VideMedlem sedan dec. 19998 577 inlägg
#2

Det beror väl på vad "ValidatePassword" returnerar...

------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#3

True/False..

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

@ndersMedlem sedan juni 200032 969 inlägg
#4
if login(bla, bla) then
'jamen!
else
'nämen
end if

typ.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#5

If Login(true) Then..?

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

@ndersMedlem sedan juni 200032 969 inlägg
#6

du har väl skapat ditt objekt i asp-koden? det blir vällan nåt sånt härnt dåra:

if objLoginobjektet.login(sMemberName, sPassword) then ...

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

[Redigerat av @nders den 10 maj 2001]

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#7

Så här har jag skrivit:

<%	
Set objEClub = Server.CreateObject("IABEClub.Member")
Set login = objEClub.Login(Request("name"), Request("password"))
Set objEClub = Nothing

If Login(true) Then
	Response.Write "Rätt!"
Else
	Response.Write "Fel!"
End If
%>

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

VideMedlem sedan dec. 19998 577 inlägg
#8

Då skall det räcka med:

If Login Then
Response.Write "Rätt!"
Else
Response.Write "Fel!"
End If

Eftersom If-satsen redan letar efter ett booelskt värde...

------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#9

Att skriva så som @nders skrev funkade. Men inte så som du skrev Vide.

Får detta felmeddelande:

Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: 'objEClub.login(...)'
/eclub_local/login.asp, line 3

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

@ndersMedlem sedan juni 200032 969 inlägg
#10

erik, i din kod ovan skriver du så här:

Set login = objEClub.Login(Request("name"), Request("password"))

du skall där inte använda set, eftersom det inte är ett objekt du får tillbaka, utan en boolean.

om du tar bort set från den raden så borde det fungera att göra på vides sätt också.

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#11

Jepp, funkade!
Tack för hjälpen Vide och @nders! :)

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

127 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)