2009-07-07 8 views
1

Meine Website lädt Bilder anhand von Namen, die für sie erstellt wurden. Es lädt Bilder unter der Annahme, dass sie da sind, wenn sie es manchmal nicht sind. Jedes Mal, es wird ein Bild wie folgt aus:Wie kann ich verhindern, dass Bilder zwischengespeichert werden? -ODER- Wie kann ich überprüfen, ob eine Datei auf dem Server existiert?

<img src="/myimages/my-image.jpg" alt=""/> 

wenn es auf dem Server nicht da ist, so scheint es cachen, dass es dort kein Bild, so dass beim nächsten Mal, wenn ich das gleiche Bild nach dem my-Bild laden .jpg wurde auf dem Server gespeichert, es wird nur als leer angezeigt ... Wie kann ich es so machen, dass es keine Bilder zwischenspeichert, die es nicht findet?

Edit: Ich möchte noch Bilder cachen, dass es

OR

Alternativ findet, wie Sie überprüfen, dass eine Datei vorhanden ist? (vorzugsweise von javascript). Auf diese Weise konnte ich prüfen, ob das Bild vor dem Laden vorhanden ist und ich würde dieses Problem vollständig untergraben.

Danke,
Matt

+1

Ist das echte Problem, dass Ihre Seite nach einem Bild fragt, das nicht existiert? Können Sie Ihre HTML-Generierung nicht ändern, um diese Seiten nicht anzufordern? –

+0

Ja ist es, nein es muss sie anfordern, oder zumindest herausfinden, ob sie da sind oder nicht. Ich muss davon ausgehen, dass die Bilder da sind, denn wenn sie hinzugefügt werden, müssen sie sie laden. – Matt

Antwort

0

Wenn Sie können, überprüfen Sie vom Server, bevor die HTML-Datei jemals an den Client gesendet wird.

Wenn dies nicht möglich ist, können Sie AJAX verwenden:

  1. Aufruf einer Seite, in einem Anforderungsparameter des Namens Datei
  2. auf der Seite, überprüfen Sie diese Dateinamen und basierend auf geben die entweder wahr oder falsch sind.
  3. Zurück in das Javascript, wenn es wahr ist (Datei existiert), lassen Sie dieses Bild laden. Laden Sie andernfalls ein Standardbild (Platzhalter) oder zeigen Sie überhaupt kein Bild an.
Verwandte Themen