15. november 2005 - 20:02Der er
33 kommentarer og 1 løsning
Update billede i DB.
Hey :-)
Sidder og roder med noget, Upload billed. Og det virker egentlig fint nok, men det driller når jeg skal "UPDATE" billederne.
Nedenstående viser scriptet der "Updater": -------------------------------------------------- <% Set Upload = Server.CreateObject("Persits.Upload") Upload.Save "c:\xxx\xxx\xxx\xxx.dk\Upload"
File.ToDatabase Connect, SQL Response.Write "File saved." Else Response.Write "File not selected." End If %> --------------------------------------------------
Men får denne fejl: -------------------------------------------------- Request object error 'ASP 0208 : 80004005'
Cannot use generic Request collection
/firmamappe/ubc/linkmaps/upload_pic_save.asp, line 14
Cannot use the generic Request collection after calling BinaryRead.
-------------------------------------------------- Linie 14: SQL = "UPDATE tbl_linkMaps SET img=?, name='newname.ext' WHERE id= " & request("ID") --------------------------------------------------
Så den kan åbenbart ikke bruge "Request", men hvad gør jeg så? (Den Request'er ID fra et hidden form felt på skrive siden)
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
Hele siden ser sådan her ud: --------------------------------- <% Set cn = Server.CreateObject("ADODB.Connection") OpenString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("../../../db/ubc/ubc_db.mdb") cn.Open OpenString
Set rs = Server.CreateObject("ADODB.RecordSet") rs.Open "SELECT * FROM tbl_linkmaps WHERE ID = " & request("ID"), cn %>
Prøv dette: Siden du kommer fra, skal du indsætte denne sætning: <% Session("id") = rs("id") %> Den lægger dit id i en session, som vi skal bruge til din SQL sætning på den siden hvor at du gemmer oplysningerne i databasen.
Prøv denne SQL: SQL = "UPDATE tekst SET filename ='" & File.Filename & "', image_beskrivelse='" & Replace(Upload.Form("image_beskrivelse"), "'", "''") & "', " & File.Size & ") WHERE ID=" & Session("id")
Så får jeg denne: --------------------------------------------------------------- Persits.Upload.1 error '800a001c'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
/firmamappe/ubc/linkmaps/upload_pic_save.asp, line 21 --------------------------------------------------------------- Linie 21: File.ToDatabase Connect, SQL --------------------------------------------------------------- Lige en opsummering på hvordan scriptet ser ud nu:
<% Set Upload = Server.CreateObject("Persits.Upload") Upload.Save "c:\webs\talkactive\webxxx\xxx.dk\Upload"
File.ToDatabase Connect, SQL Response.Write "File saved." Else Response.Write "File not selected." End If %> </BODY> </HTML> ---------------------------------------------------- NB: Jeg skal egentlig ikke bruge INSERT INTO, da jeg skal Uploade billedet til en tilhørende tekst allerede skabt/lavet og som jo så allerede har en ID.
Hvis det kun er billedets data der skal opdateres, kan du benytte flg. SQL (idet jeg antager at den første parameter bliver udskiftet af persits upload-komponenten):
Såvidt jeg lige kan se i de tidligere kommentarer, er der ikke nogen af dem der benytter de korrekte feltnavne, så det er nok derfor det ikke har fungeret...
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.