Hej igen! Förhoppsningsvis har du inte sparat bilderna efter filnamn på klienten (vilket jag i din kod ser att du gör) då det ok tack så mycket. Tänkte faktiskt inte på att de blir dubbelt så. Ska göra om så det heter anvandare_id istället.Ta bort gammal bild!
Har en bilduppladdningsfunktion på min sida. Den funkar bra. Men nu till mitt problem. När jag te.x. lägger upp en bild i min profil så vill jag att den gamla bilden som låg där innan ska raderas från mappen som den låg i. Den nya bilden kommer upp istället för den gamla men den gamla ligger kvar och tar plats. Någon som har ett förslag på hur det ska gå till.
min kod ser ut som följer:
Private Sub btnUpload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpload.Click
Dim ImageFilePath As String = fileName.PostedFile.FileName
Dim ImageFileName = System.IO.Path.GetFileName(ImageFilePath)
Try
fileName.PostedFile.SaveAs(Server.MapPath("userimages/") + ImageFileName)
Code.UploadUserPicture(anvandare_id, ImageFileName)
Catch ex As Exception
Response.Write(ex)
End Try
UpdatePic()
End SubSv: Ta bort gammal bild!
a) är en säkerhetsrisk/bugg: jag laddar upp "jag.jpg", du laddar sedan upp "jag.jpg" till dig. Vips har både du och jag din bild som visningsbild.
b) Om du döper filen till t.ex. användarid så är det buenkelt att ta bort bilden, du vet alltid vad den heter
Om du inte vill köra på användarid så föreslår jag att du ur databasen plockar fram gamla filnamnet och sedan tar bort bilden helt enkelt.Sv:Ta bort gammal bild!