Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP-Bild verändert sich erst nach direktem Aufruf

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] PHP-Bild verändert sich erst nach direktem Aufruf

    Hallo,

    Super-OTR.de - v 2.0
    Habe dort ein Spendenbarometer programmiert und habe das "Problem", dass wenn sich beim Spendenbarometer etwas verändert, er die Veränderung erst anzeigt, wenn ich das Script (welches die Bilddatei liefert) noch mal direkt aufrufe ( nicht eingebettet in die Seite ).

    Allerdings nur im FF.
    Im Internet Explorer klappt alles gut.

    Bild wird über imagepng() ausgegeben.

    Ist jetzt nicht so wild, aber interessiert mich warum der FF das macht...

    Kann ich das Problem ( nur ) beheben wenn ich das Cachen verbiete?

    Danke
    Grüße

  • SystemSchocker
    antwortet
    Was die Header betrifft reagieren die Internet-Browser sowieso alle unterschiedlich, daher solltest du deine Seite ( um möglichst alle Web-Clients zu unterstützen ) mit verschiedenen Browsern prüfen. Das Ergebnis könnte ansonsten möglicherweise abweichen. Google hilft bei der Sache auch recht gut weiter.

    Einen Kommentar schreiben:


  • PhillKill12
    antwortet
    PHP-Code:
    header("Cache-Control: no-cache");
    header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT"); 
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); 

    Einen Kommentar schreiben:


  • Destruction
    antwortet
    Zitat von PhillKill12 Beitrag anzeigen
    das mit dem random im Get functioniert nach dem gleichen system, da der browser "denkt", dass es eine neue Seite sei, die er aufruft, schöner wärs, wenn man
    PHP-Code:
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Datum in der Vergangenheit 
    Hallo,

    das habe ich auch erst probiert, aber komischerweise hat es nicht funktioniert^^

    Einen Kommentar schreiben:


  • SystemSchocker
    antwortet
    Bei den Captcha`s wird`s auf demselben Wege gemacht
    Wie PhillKill12 schon beschrieben hat... einfach nen Header setzen.

    Einen Kommentar schreiben:


  • PhillKill12
    antwortet
    das mit dem random im Get functioniert nach dem gleichen system, da der browser "denkt", dass es eine neue Seite sei, die er aufruft, schöner wärs, wenn man
    PHP-Code:
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Datum in der Vergangenheit 

    Einen Kommentar schreiben:


  • robo47
    antwortet
    oder du sendest einfach ein expire-header mit der in der vergangenheit liegt, dann sollte jeder browser das bei jedem request neu anfordern, aktuell kommt ja nichts an daten mit, das veranlasst einige browser dazu es ne zeit lang zu speichern.

    Einen Kommentar schreiben:


  • Destruction
    antwortet
    *g*...
    Das "nur" war extra in Klammern gesetzt um zu fragen ob es nicht evtl. einen anderen Grund haben könnte / es eine andere Lösung gibt.
    Edit.: Caching ändert leider nichts.

    cu
    Grüße
    Destruction

    Edit2: Lösung gefunden. Hänge nun einfach immer eine zufällige Zeichenkette dran also:
    PHP-Code:
    <img src="barometer.php?<?php echo mt_rand(); ?>

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Probiers aus?!

    Einen Kommentar schreiben:

Lädt...
X