On Mon, 20 Jan 2003, Phil Powell wrote: > I am using the following header() functions to force view.php to not cache: > > header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past > header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); > header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1 > header("Cache-Control: post-check=0, pre-check=0", false); > header("Pragma: no-cache"); // HTTP/1.0
view.php will never be cached ... > However, when a user reuploads a file in manage.php, it does a form post > onto manage.php and reuploads the file (which I verified works). > However, when redirected via header() to view.php, they still see their > OLD image file, NOT the new one! Unless I manually refresh the page, > they never see it, until they manually refresh the page, then the new > image file appears! but you failed to address the caching of images in any of your code or setup. The cache headers on the view.php script have /no/ affect on anything but view.php. You're fighting the communication betweneen the browser and the web server, so configure one or the other to play nicely. - Disable caching in your browser. - Configure your web server to include cache-control & expires headers on all pertinent image requests. (For example, see mod_expires for Apache: http://httpd.apache.org/docs/mod/mod_expires.html) In lieu of those, change the way you handle uploads. Instead of using the exact filename of the uploaded file, rename the file slightly, to include a timestamp or some other changing identifier each time the file is uploaded. For exampple, when myImage.jpg is uploaded, save it as myImage-001.jpg the first time, myImage-002.jpg the second time. g.luck, ~Chris -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php