----------------------------------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1
upload.asp, line 27
----------------------------------------------------------------------------------
I följande kod:
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &_
Server.MapPath("db/db1.mdb")
Set objRS2 = Server.CreateObject("ADODB.Recordset")
Addera = "Select * From " & Request.QueryString("tabell") &_
" Where Refid = '" & Request.QueryString("id")'
[B]objRS2.Open Addera, Connect, 3, 3 <--RAD 27[/B]
Har läst i tidigare inlägg att det har med SQL satsen att göra. Att man ska ha fnuttar när det är text osv.
Angående SQL satsen så är tabellen som ska markeras en Request.QueryString. Det jag gör är att skicka med tabellens namn i form av en QueryString. Refid är av typen tal.
Det sjuka med denna kod är att den fungerade på min bärbara med IIS men inte i servern som sidan ska ligga på.
Jag har ju skrivit i inlägget att Refid är av typen tal iallafall i databasen. Jag vet inte om QueryStringen uppfattar allt som strängar. Varför jag har tabellens namn i en QueryString är pga att minimera koden samt att kunna använda den till andra projekt.
Men jag ska prova med dina förslag. Får se om de funkar.
Addera = "Select * From " & Request.QueryString("tabell") &_
" Where Refid = " & Request.QueryString("id")
Fick jag felet:
----------------------------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1
upload.asp, line 27
----------------------------------------------------------------------------
Men nu när jag provar samma kod i servern så fungerar det. Verligen skumt.
I mitt första inlägg i denna tråd skrev SQL satsen med apostrofer att det gav samma mess. Men jag använde då av samma kod som i detta inlägg. Varför jag tog med fel kod var pga jag var förvirrad så sent som det var igår ;)
Vi får väl se hur länge min kod kommer att fungera. Förresten jag använder swebase webbhotell. Kan probleme ligga i deras server?
Jag ha en fråga till. Koden som jag har är till för ett upload/delete script. När jag laddar upp filer tex bilder hamnar de i roten. Men hur gör jag om jag vill att de ska hamna i en mapp istället. Koden är:
file=RecSet("Bild")
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileObject = fso.GetFile(Server.MapPath("db/" & file))
Filens namn hämtas ur databasen och läggs i variabeln file. Mappen som filerna ska ligga i heter db. Säg att scriptet ligger i mappen test. Hur gör man om man ska ha filerna i root/test men koden fortfarande i mappen test.