Så här kanske:
strSQL = "SELECT id FROM anvandare WHERE namn = '" & usr & "'"
Set objRS = Data.Execute(strSQL)
If objRS.EOF Then
id = False
Else
id = objRS("id")
End If
cya,
PatrikB
7 svar · 168 visningar · startad av LilleSkutt
Hallå!
Jag har problem med en funktion som ska returnera en tvådimensionell array om den har skapats, annars ska den returnera falskt.
Koden jag försökte med är:
Function id (ByVal usr)
Dim rows
rows = Data.getRows ("SELECT id FROM anvandare WHERE namn = '" & usr & "'")
If rows = False Then
id = False
Else
id = rows(lBound(rows, 2), lBound(rows, 1))
End If
End Function
Funktionen getRows returnerar en tvådimensionell array, hämtat med getRows, om den fanns, annars falskt. Nu vill jag kolla om rows är falskt eller har värden, och returnera olika beroende på det.
Hur ska jag göra?
Så här kanske:
strSQL = "SELECT id FROM anvandare WHERE namn = '" & usr & "'"
Set objRS = Data.Execute(strSQL)
If objRS.EOF Then
id = False
Else
id = objRS("id")
End If
cya,
PatrikB
Njäe, då skapar jag juh ett nytt recordset o returnerar det... Jag vill använda mig av GetRows(). Men det var ju inte det frågan handlade om heller, iofs
Hur kontrollerar man om en array finns, eller om variabeln är satt till False?
Min kod över funkar inte...
Har du gjort en egen GetRows-metod? I annat fall bör du nog kolla upp hur man använder GetRows.
Function id (usr)
Dim rows,objRS
set objRS = Connection.Execute("SELECT id FROM anvandare WHERE namn = '" & usr & "'")
if not objRS.EOF then
id=objRS.GetRows
else
id=false
End If
End Function
Alltså, jag vet hur man använder GetRows! Funktionen heter likadant, och i den hämtar jag data från en databas med den GetRows()-metod du visar. Sedan retunerar jag arrayen om det fanns någon data i arrayen, annars falskt.
I funktionen som jag bifogade i mitt första inlägg vill jag hämta användar-id:et och använder då min funktion för att hämta en array... Om det fanns någon användarnamn skickas arrayen tillbaka, annars skickas False tebax.
Grejen är den att man inte kan jämföra en array mot false, inte heller en boolean mot en array!
Ok, jag struntade i att använda False... Om det inte fanns någon data så returnerar mina funktioner null istället. Funkar toppen...
Tack för er tid, ändå!