Do you have a question? Post it now! No Registration Necessary. Now with pictures!
- Posted on
- Issue with cache and pictures
January 2, 2006, 4:00 pm
rate this thread
The script first creates some pictures out of avariable source (every time
the script runs the pics are different):
$im = imagecreatefromjpeg($file);
then I show them using normal html img tags
The problem is that the pictures are cached and the script/IE shows a
fautlhy version of the pictures.
I tried messing with the header as described in the php manual.
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
But this doesn't work... wrong pic-fileversion
Does anybody has a sollution?
Re: Issue with cache and pictures
This is a really bad way of implementing dynamically-generated images.
If more than one user is using your site, then you will get naming
collisions, files overwriting each other, users getting each other's
Much better to have an image-generating script (called, for example,
/* ... cache-control headers here ... */
/* ... need validation of $_GET fields here ... */
$im = imagecreatefromjpeg($_GET["file"]);
imagejpeg($im, '', $_GET["quality"];
Then in your HTML, you can call it thus:
Where are you putting these headers?
Headers sent with the HTML affect *only* the HTML file, not any embedded
resources (i.e. images).
The solution is to send the appropriate headers with the image files, as
is possible with the image.php implementation above.
- » does a directory out of the web root need to be in the INCLUDE ini setting to be accessibl...
- — Previous thread in » PHP Scripting Forum