Avatar billede sublimegirl Nybegynder
11. august 2003 - 11:21 Der er 17 kommentarer og
1 løsning

Objekt understøttes pludselig ikke

Pludselig får jeg en fejl, når jeg kører dette script, som sletter et billede på serveren:

_________________________________________
Dim billednavn
billednavn = Request.QueryString("navn")

Dim fso
Set fso = Server.CreateObject("Scripting.FileSystemObject")
If fso.FileExists(Server.Mappath("./upload/"& billednavn)) Then
fso.DeleteFile (Server.Mappath("./upload/"& billednavn))
End If

    editMSG="Produktet blev slettet."
    editcomplete=true
elseif stage="delete" and pruductid="" then
    editMSG="Kunne ikke slette produktet.<br>  Intet produkt er valgt."
    editcomplete=true
end if

rsprod("image") = ""  <-----denne linje
rsprod.Update
Response.Write "billedet blev slettet."
_________________________________________

Billedet bliver rent faktisk slettet, men jeg får denne fejlmedd.:

Den ønskede handling understøttes ikke af objektet eller provideren.

Hvad kan der være galt?
Avatar billede tuctoh Nybegynder
11. august 2003 - 11:24 #1
rsprod("image") = ""  <-----denne linje
rsprod.Update

er jo ikke definireret i dit eksempel :s

fjern de linier.
Avatar billede mm12010 Nybegynder
11. august 2003 - 11:26 #2
prøv at oprette dit RS sådan:

set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open strSQL, connObj, 3
Avatar billede sublimegirl Nybegynder
11. august 2003 - 11:29 #3
Jamen jeg skal jo have tømt feltet "image" i databasen samtidig med at billedet slettes... det virker lidt underligt, for det har virket fint før. Checker lige mine dimentioneringer igennem.
Avatar billede sublimegirl Nybegynder
11. august 2003 - 11:30 #4
Her definerer jeg min database tabel:
if stage="delete" and productid<>"" then
    db.execute("select * from products where productid=" & productid)
Avatar billede tuctoh Nybegynder
11. august 2003 - 11:31 #5
if stage="delete" and productid<>"" then
set rsprod =  db.execute("select * from products where productid=" & productid)
Avatar billede sublimegirl Nybegynder
11. august 2003 - 11:36 #6
tuctoh > det giver samme fejl:
Den ønskede handling understøttes ikke af objektet eller provideren.
linje:
rsprod("image") = ""
Avatar billede tuctoh Nybegynder
11. august 2003 - 11:51 #7
så prøv med:

if stage="delete" and productid<>"" then
set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open strSQL, connObj, 3


som mm sagde.
Avatar billede tuctoh Nybegynder
11. august 2003 - 11:52 #8
make that:

if stage="delete" and productid<>"" then
set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open "select * from products where productid=" & productid, db, 3
Avatar billede sublimegirl Nybegynder
11. august 2003 - 12:07 #9
tuctoh >

Med dette script får jeg samme fejl:
if stage="delete" and productid<>"" then
set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open "select * from products where productid=" & productid, db, 3

Med dette script:
if stage="delete" and productid<>"" then
set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open "select * from products where productid=" & productid, db, 3
Får jeg fejlmedd.:
Argumenterne har en forkert type eller er uden for det angivne område, eller der er opstået en konflikt mellem dem. (ref. sidste linje)
Avatar billede sublimegirl Nybegynder
11. august 2003 - 12:08 #10
Undskyld, sidste script var:
if stage="delete" and productid<>"" then
set rsprod = Server.CreateObject("ADODB.Recordset")
rsprod.Open strSQL, connObj, 3 <------fejllinjen
Avatar billede eagleeye Praktikant
11. august 2003 - 16:41 #11
Hvad hedder dit connection object ?
Avatar billede eagleeye Praktikant
11. august 2003 - 16:50 #12
Der er i princippet en ting galt i din kode.

Du mangler at angive en locktype og default er locktype Read-Only så man ikke kan rette i recordsetet se mere her:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/adoce31/html/ado30ref_28.asp

"The default value for this parameter is adLockReadOnly"

Så du skal tilføje ,2 eller ,3 efter det 3 tal du har i forvejen sådan her:

rsprod.Open strSQL, connObj, 3, 2

og du skal være 100% sikker på du har en variable som hedder strSQL og indeholder din SQL sætning + du har en variable connObj som er en connection til din database.
Avatar billede sublimegirl Nybegynder
12. august 2003 - 08:26 #13
Okay, jeg tilføjede lige ", 2" i min åbning af databasen, og nu får jeg denne fejl:

Argumenterne har en forkert type eller er uden for det angivne område, eller der er opstået en konflikt mellem dem.

Linje: rsprod.Open strSQL, connObj, 3, 2

Jeg nærlæser lige mit script en gang til, måske ligger fejlen et andet sted.
Avatar billede mm12010 Nybegynder
12. august 2003 - 08:35 #14
det lyder som en SQL-fejl, prøv at udsrikve din SQL og smid den her
Avatar billede sublimegirl Nybegynder
12. august 2003 - 09:20 #15
Jeg tror at jeg skal geninstallere min IIS, ... der er i hvert fald noget i vejen, for jeg har flere andre sites som pludselig ikke kører, men som før har kørt uden problemer...
Avatar billede sublimegirl Nybegynder
12. august 2003 - 10:41 #16
Min PC opfører sig virkelig mærkeligt. Jeg har netop installeret min IIS på ny, og kørt en windows update, og nu vil databasen ikke engang åbne. Vildt underligt, se her:

Fejltype:
Provider (0x80004005)
Uspecificeret fejl
/admin/db.asp, line 10

linje 10:
db.open strConn

Det dokument har altid virket. Hvad går der galt med min PC? Måske bør jeg bare lukke det her spørgsmål, og oprette et nyt under en anden kategori...
Avatar billede sublimegirl Nybegynder
12. august 2003 - 10:44 #17
Jeg lukker, og opretter et nyt spørgsmål i en mere passende kategori. Ellers tak for hjælpen.
Avatar billede eagleeye Praktikant
12. august 2003 - 17:11 #18
Hvorfor afviser du et rigtigt svar???

Den kode du har vist har sku ikke virker før, det for let at se!!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester