PNG Verfallsdatum
peter
- php
0 Twilo0 Christian Kruse0 Twilo
Hi,
SCHRITT 1:
ich lade per Formular ein PNG hoch und verarbeite es dann mit php weiter.
SCHRITT 2:
Das hochgeladene PNG wird dann im Browser angezeigt und ich kann per Formular noch zusätzliche Eingaben zum PNG machen.
SCHRITT 3:
Beim Abschicken des Formulars werden dann meine zusätzlichen Eingaben in eine Datenbank gespeichert und das PNG mit entsprechendem Namen in meinen Bilderordner kopiert.
So will ich nacheinander verschiedene Bilder verarbeiten.
Mein Problem liegt bei SCHRITT 2.
Der Browser zieht das Bild immer aus dem Cache, ich bekomme also immer nur das erste Bild angezeigt, das ich hochgeladen habe.
Das Hochladen und zwischenspeichern weiterer PNGs funktioniert, wenn ich den Cache leere, sehe ich das aktuelle Bild.
Habs jetzt schon so versucht:
einbinden mit: <img src="daspng.php">
und folgende PHP (daspng.php):
(mit headern for Cache-control usw. wies in meinem Buch steht)
____________________________________________________
<?php header("Content-Type: image/png");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMZ");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
$imgq=imagecreatefrompng('UPLOADED_PNG.png');
imagepng($imgq);
?>
____________________________________________________
wie krieg ich die Browser dazu, das PNG nicht zwischenzuspeichern ?
gruß
peter
你好 Twilo,
Schlechter Tipp. Sich jedesmal aendernde URLs sorgen nur fuer ueberlaufende
Proxies und volle Caches. Wenn ein Bild jedesmal neu geladen werden soll,
dann reichen die Cache-Header aus:
Expires: Thu, 1 Jan 1970 00:00:00 GMZ
Cache-Control: max-age=0
Alles andere ist kontraproduktiv.
再见,
CK
Hallo,
Expires: Thu, 1 Jan 1970 00:00:00 GMZ
Cache-Control: max-age=0
das muss doch dann in der Datei, die die Grafik erzeugt, oder?
nur was ist, wenn man eine *.gif Datei als Source angibt,
wie übermittel ich da den Header?
mfg
Twilo
你好 Twilo,
Expires: Thu, 1 Jan 1970 00:00:00 GMZ
Cache-Control: max-age=0das muss doch dann in der Datei, die die Grafik erzeugt, oder?
Es muss in den HTTP-Header der Datei ausgeliefert werden, ja.
nur was ist, wenn man eine *.gif Datei als Source angibt,
wie übermittel ich da den Header?
Mit einer .htaccess-Datei, entweder mit mod_headers oder
mit mod_expires.
再见,
CK
Hi Christian,
danke, das hilft mir erstmal weiter.
Bin hier jetzt noch etwas am rumbasteln.
Was ist denn mit denen:
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
???
Warum sind die kontraproduktiv?
nur was ist, wenn man eine *.gif Datei als Source angibt,
wie übermittel ich da den Header?Mit einer .htaccess-Datei, entweder mit mod_headers oder
mit mod_expires.
Interessant!! Das werd ich mir mal näher zu Gemüte führen.
Gruß
peter
你好 peter,
Was ist denn mit denen:
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");???
Warum sind die kontraproduktiv?
Sind sie nicht, das bezog sich auf die Methode, die URI bei jedem Request
zu aendern. Ansonsten sind da viele Header fuer Proxy-Server dabei, die
haben wenig Auswirkungen auf den Client.
再见,
CK