- Og hvordan laver jeg så hvis der ikke er noget billede på den pågældende plads, så skrives der at brugeren ikke har uploadet noget billede, i stedet for en hvid firkant med et kryds i.
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\") strSQL = \"SELECT * FROM persondata WHERE (id = \"& session(\"usrID\") &\")\" rsBlob.Open strSQL, myConn, 1, 3 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>
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\") else Response.ContentType = \"text/html\" Response.Write \"Der er ikke uploadet billede\" End If \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing Response.End
Jeg kan se jeg bliver nøs til at bruge Request(\"ID\") for at jeg ikke får det samme billede frem hver gang, men det virker stadig ikke.
Siden bliver nemlig både brugt til at vide data for personer der er logget ind, og personer der ikke er logget ind, og sessionen indeholdt kun id til personen der er logget ind. *s*
du manglede åbentbart ligheds tegnet til at det var rigtigt.
Det ser ud til at virke nu, men det tmceu skrev med at den skrev at der ikke var noget billede i stedet for at vise firkanten med krydset i virker ikke.
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\") else Response.ContentType = \"text/html\" Response.Write \"Der er ikke uploadet billede\" End If \' Her frigives Connection objektet fra hukommelsen myConn.Close Set myConn = Nothing Response.End
Har du prøvet upload.asp alene fra adresselinie som jeg foreslog ?
Der er en lille detalje omkring det med at vise en tekst i stedet. upload.asp vil returne en tekst, hvis der ikke er noget billede. Problemet er, at du har den pakket ind i en IMG tag, hvilket vil sige at du får eks. <IMG SRC=Der er ikke uploadet...
for min skyld kan du lave alt det om du vil, bare det virker *s*
hvis jeg køre upload.asp?mode=show&id=xxx og erstatter xxx med et id der eksistere, kommer billedet fint.
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.