---
title: "Problem med bilduppladdning"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/143470-problem-med-bilduppladdning"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "wiggo"
published: "2006-03-05T17:50:24.000Z"
updated: "2006-03-05T17:50:24.000Z"
replies: 0
views: 323
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/143470-problem-med-bilduppladdning"
---

# Problem med bilduppladdning

## #1 — wiggo, 2006-03-05T17:50Z

Hej!

Vilket trevligt forum!  :bire  Håller precis på med mitt ex-jobb nu och all hjälp är välkommen. Iaf så har jag två problem just nu angående bilduppladdning som är en del av mitt projekt...

Det första är när en bild ska sparas i min Access-databas. Allt fungerar men jag vill att bilden ska skalas ner i lämplig storlek innan den sparas i databasen. Nu ser koden ut så här:
       
 *'--------ladda upp bilden
        '---- Existerar bilden ?
        If (txtFilnamn.PostedFile Is Nothing) Or \_
                  txtFilnamn.PostedFile.FileName = "" Then
            '---- Nej
        Else
            '---- Ja

'----läs in bilden till arbetsminnet 1 kB i taget
            count = imageStream.Read(imageBuffer, 0, imageBuffer.Length)
            Do While count \> 0
                imageMemory.Write(imageBuffer, 0, imageBuffer.Length)
                count = imageStream.Read(imageBuffer, 0, imageBuffer.Length)
                antal += 1
            Loop

            '--------- Lagra bilden i databasen
            '--------- Skapa förbindelse till databasen
            conWWWButik = New OleDbConnection(Application("conString"))

            '--------- Öppna förbindelse till databasen
            conWWWButik.Open()

            'varunr = txtVarunr.Text
            SQL = "UPDATE Varureg SET Varubild= @bufferStream" \_
                 & " WHERE Bildnr=@maxbildnr;"
            ' & " WHERE Varunr='" & varunr & "';"

            cmdSavePicture = New OleDbCommand(SQL, conWWWButik)
            cmdSavePicture.Parameters.Add("@bufferStream", \_
           imageMemory.GetBuffer)

            cmdSavePicture.Parameters.Add("@maxbildnr", maxbildnr)
            cmdSavePicture.ExecuteNonQuery()*

**Problem två.**

När en bild hämtas från databasen så sparas den på servern för att kunna visas. Som det är nu så tas inte den temporära bilden på servern inte bort utan ligger kvar och det blir dubbellagring. Hur skriver jag för att ta bort kopian på servern?

Nuvarande kod:

          *SQL4 = "SELECT Varubild FROM Varureg WHERE (Bildnr=" & Bildnr & ");"

           cmdLoadPicture = New OleDbCommand(SQL4, conWWWButik)
            drImage = cmdLoadPicture.ExecuteReader \_
                       (CommandBehavior.SequentialAccess)

            '--------- Finns varan i databasen ?
            If drImage.Read() Then
                '---- Ja, finns varubild till varan i databasen ?
                If (Not drImage.IsDBNull(0)) Then

                    '---- Ja
                    '----Läs in bilden till en vektor av Bytes
                    drImage.GetBytes(0, 0, imageBytes, \_
                                     0, maxImageSize)

                    '---- Lägg in vektorn i en "minnesström"
                    imageMemory = New MemoryStream(imageBytes, 0, \_
                                imageBytes.Length, True, False)

                    '---- Omvandla "minnesströmmen" till en bild
                    varubild = Image.FromStream(imageMemory)

                    '---- Spara bilden på servern och koppla den till
                    '---- en image-kontroll
                    bild = ("bilder/" & Bildnr & ".jpg")

                    varubild.Save(Server.MapPath(bild))

                    imgVaruBild.ImageUrl = bild
                    If varubild.Width \< 400 Then
                        imgVaruBild.Width = varubild.Width
                    Else
                        imgVaruBild.Width = 400
                       
                    End If

                    imageMemory = Nothing*

Hoppas någon kan hjälpa mig...   :D

Permalänk: https://www.webforum.nu/p/143470

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/143470-problem-med-bilduppladdning
