23. september 2001 - 20:16Der er
9 kommentarer og 1 løsning
HJÆLP update record
Hvordan omskriver jeg denne sætninge til at den opdatere den record hvor id er lig med \"session(\"usrID\")\", i stedet for at oprette et ny record set.
\' Her gemmes filen i databasen Set rsBlob = Server.CreateObject(\"ADODB.RecordSet\") rsBlob.Open \"persondata\", myConn, 1, 3 rsBlob.AddNew objUpl.Form(\"f1\").SaveAsBlob rsBlob.Fields(\"Image_Data\") rsBlob.Fields(\"Image_Type\") = objUpl.Form(\"f1\").ContentType rsBlob.Update intID = rsBlob(\"ImageID\") rsBlob.Close \' Her frigives vores recordset fra hukommelsen Set rsBlob = Nothing \' Tekst der viser hvad filnavnet er og hvor meget filen fylder strMsg = \"<p>Filen <em>\" & strFilename & \"</em> er uploaded til databasen, og fylder <em>\" & objUpl.TotalBytes & \"</em> bytes.</p>\" &_ \"<p><img src=upload.asp?mode=show&id=\"& intID &\"></p>\"
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
ID = AutoNumber Name = Text Adresse = Text Tlf = Text mobil = Text Email = Text ICQ = Text Foedselsdag = Text Username = Text Password = Text Image_Data = OLE Object Image_Type = Text
Men de andre felter kan man rette et andet sted, så det er kun billedet der skal puttes ind.
If Request.QueryString(\"mode\") = \"show\" Then \' Denne kode fremviser den ønskede fil strSQL = \"SELECT Image_Type, Image_Data FROM persondata WHERE (ImageID = \" & intID & \");\" Set rs = myConn.Execute(strSQL) If Not rs.EOF Then Response.ContentType = rs(\"Image_Type\") Response.BinaryWrite rs(\"Image_Data\") End If \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing Response.End
End If
\' Her skabes FileUp objektet Set objUpl = Server.CreateObject(\"SoftArtisans.FileUp\")
\' Her sættes en begrænsning på 200 kb. If objUpl.Form(\"upload\") <> \"\" Then \' Hvis formen er blevet submitted strFilename = objUpl.Form(\"f1\").UserFilename strFileExt = Mid(strFilename, InstrRev(strFilename, \".\") + 1) If objUpl.Form(\"f1\").IsEmpty Then strMsg = \"<p>Du skal vælge en fil</p>\" ElseIf LCase(strFileExt) <> \"gif\" AND LCase(strFileExt) <> \"jpg\" Then strMsg = \"<p>Du skal vælge enten et GIF eller JPG fil!</p>\" ElseIf objUpl.TotalBytes > 200000 Then strMsg = \"<p>Billedet fylder mere end 200 Kb., vælg venligst et andet!</p>\" Else \' Her gemmes filen i databasen Set rsBlob = Server.CreateObject(\"ADODB.RecordSet\") rsBlob.Open \"persondata\", myConn, 1, 3 rsBlob.AddNew objUpl.Form(\"f1\").SaveAsBlob rsBlob.Fields(\"Image_Data\") rsBlob.Fields(\"Image_Type\") = objUpl.Form(\"f1\").ContentType rsBlob.Fields(\"UsrID\") = session(\"usrID\") rsBlob.Update intID = rsBlob(\"ImageID\") rsBlob.Close \' Her frigives vores recordset fra hukommelsen Set rsBlob = Nothing \' Tekst der viser hvad filnavnet er og hvor meget filen fylder strMsg = \"<p>Filen <em>\" & strFilename & \"</em> er uploaded til databasen, og fylder <em>\" & objUpl.TotalBytes & \"</em> bytes.</p>\" &_ \"<p><img src=upload.asp?mode=show&id=\"& intID &\"></p>\" End If End If
\' Her frigives FileUp objektet fra hukommelsen Set objUpl = Nothing %><html><head> <title>Upload til Access</title> </head><body> <%=strMsg%> <form method=\"POST\" enctype=\"multipart/form-data\" action=\"upload.asp\"> <p><input type=\"file\" size=\"20\" name=\"f1\"></p> <p><input type=\"checkbox\" name=\"C1\" value=\"ON\">Klik her hvis billedet skal bruges på din profil</p> <p><input type=\"submit\" name=\"upload\" value=\"Upload\"></p> <p>Bemærk: Billedet må max være på 200 kb.</p> </form> <% \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing %> </body></html>
okay, skift rsBlob.Open \"persondata\", myConn, 1, 3 ud med rsBlob.Open \"SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\")\" myConn, 1, 3
Error Type: Microsoft VBScript compilation (0x800A0401) Expected end of statement /moejensen/Overlund/upload.asp, line 41, column 75 rsBlob.Open \"SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\")\" myConn, 1, 3 --------------------------------------------------------------------------^
Error Type: Microsoft VBScript compilation (0x800A03EA) Syntax error /moejensen/Overlund/upload.asp, line 41, column 12 rsBlob.Open SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\") myConn, 1, 3
Jeg har ændret lidt i kode nogle steder, men ikke nogle steder der skulle have betydning for det du hjælper mig med. Så du fåe lige koden igen:<% Set myConn = Server.CreateObject(\"ADODB.Connection\") myConn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"../Database/bruger.mdb\")
intID = Request(\"ID\")
If Request.QueryString(\"mode\") = \"show\" Then \' Denne kode fremviser den ønskede fil strSQL = \"SELECT Image_Type, Image_Data FROM persondata WHERE (ID = \" & intID & \");\" Set rs = myConn.Execute(strSQL) If Not rs.EOF Then Response.ContentType = rs(\"Image_Type\") Response.BinaryWrite rs(\"Image_Data\") End If \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing Response.End
End If
\' Her skabes FileUp objektet Set objUpl = Server.CreateObject(\"SoftArtisans.FileUp\")
\' Her sættes en begrænsning på 200 kb. If objUpl.Form(\"upload\") <> \"\" Then \' Hvis formen er blevet submitted strFilename = objUpl.Form(\"f1\").UserFilename strFileExt = Mid(strFilename, InstrRev(strFilename, \".\") + 1) If objUpl.Form(\"f1\").IsEmpty Then strMsg = \"<p>Du skal vælge en fil</p>\" ElseIf LCase(strFileExt) <> \"gif\" AND LCase(strFileExt) <> \"jpg\" Then strMsg = \"<p>Du skal vælge enten et GIF eller JPG fil!</p>\" ElseIf objUpl.TotalBytes > 200000 Then strMsg = \"<p>Billedet fylder mere end 200 Kb., vælg venligst et andet!</p>\" Else \' Her gemmes filen i databasen Set rsBlob = Server.CreateObject(\"ADODB.RecordSet\") rsBlob.Open SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\") myConn, 1, 3 rsBlob.AddNew objUpl.Form(\"f1\").SaveAsBlob rsBlob.Fields(\"Image_Data\") rsBlob.Fields(\"Image_Type\") = objUpl.Form(\"f1\").ContentType rsBlob.Update rsBlob.Close \' Her frigives vores recordset fra hukommelsen Set rsBlob = Nothing \' Tekst der viser hvad filnavnet er og hvor meget filen fylder strMsg = \"<p>Filen <em>\" & strFilename & \"</em> er uploaded til databasen, og fylder <em>\" & objUpl.TotalBytes & \"</em> bytes.</p>\" &_ \"<p><img src=upload.asp?mode=show&id=\"& session(\"usrID\") &\"></p>\" End If End If
\' Her frigives FileUp objektet fra hukommelsen Set objUpl = Nothing %><html><head> <title>Upload til Access</title> </head><body> <%=strMsg%> <form method=\"POST\" enctype=\"multipart/form-data\" action=\"upload.asp\"> <p><input type=\"file\" size=\"20\" name=\"f1\"></p> <p><input type=\"submit\" name=\"upload\" value=\"Upload\"></p> <p>Bemærk: Billedet må max være på 200 kb.</p> </form> <% \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing %> </body></html>
nu er det længe siden jeg har arbejde med RecordSet\'s men prøv følgende erstat rsBlob.Open SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\") myConn, 1, 3 med strSQL = \"SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\")\" rsBlob.Open strSQL, myConn, 1, 3
det virkede næsten, jeg skulle bare også slette rsBlob.AddNew så virkede det..
men tak for hjælpen
Synes godt om
Ny brugerNybegynder
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.