Fejl i Update til db - kan ikke bruge autoid som kriterie
Hey EDet er sikkert fordi jeg er træt og kar kodet hele natten :), men her er hvad jeg har brug for hjælp til...
Kode i ASP på en live IIS 5.0
Jeg har problemer med at få updatet en post i en ms access db. I forbindelse med upload af billeder til en specifik artikkel, kan jeg ikke få lov til, at bruge autoid-posten som identifier for hvor billedenavnet (*.gif) skal placeres...
fejlen lyder:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/xm/inc/verify.asp, line 19
koden viser jeg om lidt, men først en forklaring af koden. I forbindelse med upload af et billede, starter jeg med at poste billede; artikkel autoid, kategorien, forfatteren og hans autoID, til tabellen billeder. Herefter sendes artikkel autoId'et og kategorien til næste asp fil (billede) med denne kode:
bla bla
default.asp?mode=billede&arID="&Request.QueryString("arID")&"&kategori="&Request.QueryString("kategori")
bla bla
ingen problemer der
i filen billede vælges så hvilken fil der skal uploades og string'ene sendes med til næste fil (godkend) med koden:
bla bla
ACTION="default.asp?mode=godkend&arID=<%=Request.QueryString("arID")%>&kategori=<%=Request.QueryString("kategori")%>"
bla bla
heller ingen problemer der, men i filen godkend skal billedenavnet (*.gif) så skrives ind i tabellen billeder, på den post hvor billedenavnet har sin plads: Bsrc
Det prøver jeg så at gøre med nedenstående kode, som desværre ikke formår at benytte billede tabellens autoID (som jeg i tabellen har kaldt BilledeID). Koden er som følger:
<% Set rss = conn.Execute("SELECT TOP 1 * FROM billeder WHERE Bart='" & Request.QueryString("arID") & "' ORDER BY BilledeID DESC")
dim ref, kat, mellem, autoBid
autoBid = rss("BilledeId")
kat = rss("BartKat")
mellem = "gfx/artikler/" & kat & "/"
ref = mellem %>
<table width="100%" cellpadding="1" cellspacing="2"><tr><td>
<td font class="form" width="100%"><%=autoBid%>Destination "<%intFileUpload = FileUpload(ref, 409600, Array("image/gif", "image/jpeg", "image/pjpeg"), Array("gif", "jpg"), strContentType, strFilename, intFileTotalBytes)%>"</td></td></tr>
</table>
<% If intFileUpload = 0 Then
Dim rsfilnavn, tilbage, autoBidPost
rsfilnavn = strFilename
If Session("nick") = "" Then
Response.Redirect("default.asp?mode=login")
End if
(linje 19 med fejl) Conn.Execute("UPDATE billeder SET Bsrc = '" & rsfilnavn & "' WHERE Bref='" & Session("nick") & "' AND BartKat='" & Request.QueryString("kategori") & "' AND BilledeId='" & autoBid & "'")
Uden autoBid fungere alt næsten fint. Problemet uden autoBid er at så bliver alle poster i tabellen Billeder med samme arID overskrevet til det sidste uploadet billedenavn...
Er der nogen der kan gennemskue hvad jeg har skrevet og kan hjælpe mig?
SkjoldP
