---
title: "Visar gammal bild vid uppladdning av ny bild."
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/141200-visar-gammal-bild-vid-uppladdning-av-ny-bild"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "silo"
published: "2006-01-20T13:22:49.000Z"
updated: "2006-05-10T19:29:34.000Z"
replies: 8
views: 766
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/141200-visar-gammal-bild-vid-uppladdning-av-ny-bild"
---

# Visar gammal bild vid uppladdning av ny bild.

## #1 — silo, 2006-01-20T13:22Z

Har en sida där användare laddar upp en bild som sparas och sedan visas för användaren på en gång. Om användaren redan har laddat upp en bild tidigare så skrivs den gamla bilden över så samma namn på bilden används hela tiden.

Eftersom samma namn på bilden används så hinner inte alltid servern med utan den gamla bilden visas i stället för den nya bilden.

Finns det något sätt att se till att inte programmet går vidare innan bilden är nersparad till disk? Eller är det något annat som är galet?

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

## #2 — Brimba, 2006-01-20T13:35Z

när du visar bilden så lägg till en slumpparameter.

exempelvis.

\<img src="mypicture.jpg?rnd=967"\>
vid nästa anrop så slumpas en annan siffra.
\<img src="mypicture.jpg?rnd=189"\>

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

## #3 — silo, 2006-01-20T14:15Z

Nu hängde jag inte alls med. Kan du förklara lite mer?

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

## #4 — Brimba, 2006-01-20T14:44Z

Problemet är att webbläsaren/webbservern har bilden cachad. Så trots att du har laddat upp en ny bild så visas den gamla eftersom det är samma namn på bilden.

Om du lägger till en querystring till bildnamnet så tror webbläsaren/webbservern att det är en annan bild/fil som den frågar efter och försöker därför inte hämta den från cachen.

Men för att inte även querystringvärdet skall cachas så måste du slumpa fram ett värde. Normalt brukar det räcka med ett tal mellan 1 och 1000, men du kan naturligtvis använda en guid eller något annat för att få det helt unikt.

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

## #5 — silo, 2006-01-20T14:53Z

Ok, då är jag med. Ska prova...

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

## #6 — silo, 2006-01-23T07:55Z

Blir tokig på det här... Jag tror att det fungerar bättre nu när jag har ett random-värde men eftersom felet bara uppstod ibland så vet jag inte med säkerhet men vad jag har testat hitils så fungerar det. Nu till nästa problem.

Om en användare inte har laddat upp någon bild så visas en default-bild. När sedan användaren laddar upp en bild för första gången så visas inte den nya bilden förrens användaren har laddat om sidan. Har prövat att nästan hårdkoda filnamnet på bilden med hjälp av Session-variabel men den visar ändå default-bilden. Här är en kod som jag testat lite med. Sessein\["bildnamn"\] sätts när bilden laddas upp.

```
            if (Session["bildnamn"].Equals("ib.gif"))
            {
                imgAnvBild.ImageUrl = "~/hb/" + "ib.gif";
            }
            else
            {
                Random rndNr = new Random();
                rndNr.Next(1000);
                imgAnvBild.ImageUrl = "~/ab/" + Session["bildnamn"] + "?rnd=" + rndNr;
            }
```

Det fungerar som sagt inte första gången användaren laddar upp en bild men sen så fungerar det hur bra som helst.

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

## #7 — Nson, 2006-01-23T16:05Z

Jag har liknande problem, dock har jag jobbat med att ta fram datum & tid efter ? i stället med ett enkelt \<% Response.Write(Now()) %\> dock fungerar det inte i FireFox som verkar strunta i vad som står efter: ?

(Inte för att det bringade nån klarhet men ... :))

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

## #8 — Smyke, 2006-02-03T19:26Z

Jag har löst problemet genom att göra en Response.Redirect efter uppladdningen. Vet inte om det räknas som en "fullösning" men det funkar iaf.

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

## #9 — Donatello, 2006-05-10T19:29Z

Borde inte en bättre idé vara att hascha bilden vid uppladdningen, slänga in hashvärdet i en databas och lägga in hashvärdet i querystringen? Då får du ny qs enbart när du laddat upp en ny bild. Besökarna använder cachade bilderna så länge qs är densamma, men laddar hem en ny så fort det ändras = minskad trafik mellan server och användare.

Bara en tanke...  :OO

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/141200-visar-gammal-bild-vid-uppladdning-av-ny-bild
