Jag har ett litet problem. Hej Får det ändå inte att fungera ändå. Även den filmen som inte har något med sökordet att göra kommer upp. Hrmm... jag kan inte riktigt se hur du fyller ditt recordset... Iomed att du tar sökord direkt från användargränssnittet, utan att sanera indata på något sätt, har du öppnat programmet för en SQL Injection Attack. http://msdn.microsoft.com/msdnmag/issues/04/09/SQLInjection/default.aspx förklarar vad detta är. Tack!! nu fungerar det äntligen även om programmet bara är för jag ville programmera lite är det roligt att det fungerar.Söka i databasen
Dim itm As ListItem
vod = Combo1.Text
sok = Text3.Text
sql = "SELECT ID, Title, sort From Filmer WHERE Title LIKE " & sok
Con.Execute sql
Do Until rst.EOF
Set itm = ListView1.ListItems.Add()
'If vod = rst("sort") Then
itm.Text = rst("title")
itm.SubItems(1) = rst("langd")
itm.SubItems(2) = rst("sort")
'End If
rst.MoveNext
Loop
rst.MoveFirst
det kommer upp ett felmeddelande om att "det har inte angetts något värde för en eller flera nödvändiga parametrar"
Jag vet inte riktigt vart felet är. Hoppas någon hittar det.
Sv: Söka i databasen
Title gissar jag på är ett textfält och då ska det ha ' runt.
<code>
sql = "SELECT ID, Title, sort From Filmer WHERE Title LIKE ' " & sok & " ' "
' jag har lagt till lite extra utrymme så att du ska se vart fnuttarna ska in
</code>
//Anna-KarinSv:Söka i databasen
Fattar inte vad som är fel.
/Petter Sv: Söka i databasen
Borde det inte vara något i den här stilen:
Dim itm As ListItem
vod = Combo1.Text
sok = Text3.Text
sql = "SELECT ID, Title, sort From Filmer WHERE Title LIKE '" & sok & "'"
Set rst = Con.Execute(sql) ' <=== ändrad rad ===
Do Until rst.EOF
Set itm = ListView1.ListItems.Add() ' osv...
rst.MoveNext
Loop
If Not rst.BOF Then rst.MoveFirst
Sv: Söka i databasen
(Kanske är detta ett program som du bara skriver för din egen skull, men det kan vara värt att känna till det här problemet ändå...)Sv:Söka i databasen
/Petter