Twilo: Grafik immer neu laden lassen

Hallo,

ich generiere ein Bild per PHP und lasse es auf der Festplatte abspeichern, damit man sich ein Bild machen kann, wie es nachher aussieht.
Nur ich hab ein problem, wenn man das Bild sich noch einmal anzeigen lässt, dass dann das alte Bild noch angezeigt wird und nicht die neue Version.

Was muss man unternehmen, damit ich die aktuelle Version zu Gesicht bekomme?

bei den Grafikfunktionen von PHP hab ich nix dergleichen gefunden,
oder muss ich einen Header irgendwie schicken, aber wie?

mfg
Twilo

  1. Hi Twilo,

    am sichersten, wenn Du es über den Browser betrachtest, ist eine namensänderung.

    Viele Grüße
    Mathias Bigge

    1. Hallo Mathias,

      am sichersten, wenn Du es über den Browser betrachtest, ist eine namensänderung.

      nur muss ich dann auch zusehen, dass dann die alten Bilder auch alle wieder verschwinden ;-)

      werd mal schauen, wie ich das am blödsten löse

      mfg
      Twilo

      1. Hi,

        am sichersten, wenn Du es über den Browser betrachtest, ist eine namensänderung.
        nur muss ich dann auch zusehen, dass dann die alten Bilder auch alle wieder verschwinden ;-)

        Der Name muß nicht geändert werden. Es reicht, dem URL des Bildes einen fortlaufenden/zufälligen Parameter anzuhängen.

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        1. Der Name muß nicht geändert werden. Es reicht, dem URL des Bildes einen fortlaufenden/zufälligen Parameter anzuhängen.

          In der Theorie, meiner Erfahrung nach reicht das in der Praxis nicht aus, beim Mozilla nicht und auch nicht bei IE...

          1. Hi,

            In der Theorie, meiner Erfahrung nach reicht das in der Praxis nicht aus, beim Mozilla nicht und auch nicht bei IE...

            Dann divergieren offensichtlich unsere Erfahrungen. Denn auch unter den "unglücklichsten" Umständen (also Auftreten dieses Verhaltens trotz korrekter Browerkonfiguration - mithin in keinster Weise mehr nicht im Zugriffsbereich des Anwenders), habe ich noch stets die Datei bekommen, die ich haben wollte.

            Ebenfalls Mozilla und IE.

            Gruß, Cybaer

            --
            Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
          2. Hallo,

            Der Name muß nicht geändert werden. Es reicht, dem URL des Bildes einen fortlaufenden/zufälligen Parameter anzuhängen.

            In der Theorie, meiner Erfahrung nach reicht das in der Praxis nicht aus, beim Mozilla nicht und auch nicht bei IE...

            ich hab das Bild eben so ausgeben lassen
            $smarty->assign('grafik_url', './_grafiken/'.$id.'.gif?'.time());

            Opera 8.0/b1, Internet Explorer 6 und Firefox 1.0, laden jedesmal das Bild neu :-)

            mfg
            Twilo

            1. Hi,

              Opera 8.0/b1, Internet Explorer 6 und Firefox 1.0, laden jedesmal das Bild neu :-)

              Man soll ja nie nie sagen, aber Du wärst auch der erste hier im Forum gewesen, dem dieser Tip nicht weitergeholfen hätte ... ;-)

              Gruß, Cybaer

              --
              Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  2. Nur ich hab ein problem, wenn man das Bild sich noch einmal anzeigen lässt, dass dann das alte Bild noch angezeigt wird und nicht die neue Version.

    Hatte das gleiche Problem, hab' alle Caches abgedreht, hat alles nichts genutzt; die einzige Lösung war eine dynamische Namensverwaltung des Bildes...

    1. Hallo,

      Nur ich hab ein problem, wenn man das Bild sich noch einmal anzeigen lässt, dass dann das alte Bild noch angezeigt wird und nicht die neue Version.

      Hatte das gleiche Problem, hab' alle Caches abgedreht, hat alles nichts genutzt; die einzige Lösung war eine dynamische Namensverwaltung des Bildes...

      hört sich ja nicht gut an :-(

      würde es denn funktionieren, wenn man zur Vorschau das Bild per PHP-Script zum Browser schickt und das Bild erst auf die Platte speichert, wenn es den User gefällt?

      mfg
      Twilo

      1. würde es denn funktionieren, wenn man zur Vorschau das Bild per PHP-Script zum Browser schickt und das Bild erst auf die Platte speichert, wenn es den User gefällt?

        Das kann ich Dir leider nicht beantworten, ich habe nie herausgefunden, wo genau das alte Bild so hartnäckig gespeichert wird.

        Meine Aufgabenstellung war damals die Erstellung von graphischen Navigationsbuttons mit PHP und GD-Lib. Ich hab html-seitig alles an Cache abgedreht, was irgendwie ging sowas wie:

        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="pragma" content="no-cache">

        hat nichts genutzt, das eigentliche, neu generierte Bild war erst da, nachdem man im Browser mehrmals auf Reload gedrückt hat. (Wobei die "jedesmal neu Laden" Option im Browser ohnehin aktiviert war, darauf konnte ich mich verlassen, weil die Geschichte in einem Intranet-Environment lief, nutzte nix)

        Die einzige Lösung war die, daß jeder erzeugte Button einen dynamischen Namensanteil bekam, der alte Button beim Generieren des Neuen gelöscht wurde, und das Script irgendwie mitbekommen mußte, wie der neue denn nun hieß ;)

        Mühsam zwar, aber danach hat es geklappt...

        1. Hi klawischnigg,

          <meta http-equiv="cache-control" content="no-cache">
          <meta http-equiv="pragma" content="no-cache">

          Ja, deshalb schrub ich ja in Deinem Sinne, dass es keinen Weg gibt, dass eigenartige Caching-Verhalten der diversen Brauser mit HTML und dergleichen auszutricksen. Hier ist vor allem der IE von sturer Bockigkeit und cached, was er will, der Frechdachs....

          Viele Grüße
          Mathias Bigge

          1. Hi klawischnigg,

            <meta http-equiv="cache-control" content="no-cache">
            <meta http-equiv="pragma" content="no-cache">
            Ja, deshalb schrub ich ja in Deinem Sinne, dass es keinen Weg gibt, dass eigenartige Caching-Verhalten der diversen Brauser mit HTML und dergleichen auszutricksen. Hier ist vor allem der IE von sturer Bockigkeit und cached, was er will, der Frechdachs....

            hinzu kommt m. E., daß sich die Metaangaben nicht auf die Bilder an sich beziehen, sondern auf das (X)HTML-Dokument.

            Gruß aus Berlin!
            eddi