Here's what I've got, starting at the top...

==========================================
<?php
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');
                                                      // always modified
header ('Cache-Control: no-cache, must-revalidate');  // HTTP/1.1
header ('Pragma: no-cache');                          // HTTP/1.0
?><html>
<head>
<title>Title</title>
<META HTTP-EQUIV="Expires" CONTENT="0">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

[SNIP]

<?php
function randbg() {
        $num_of_bgs = 5;
        $the_one = rand(1,$num_of_bgs);
        echo "bg".$the_one.".jpg";
        }
?>

[SNIP]

<td valign=top align=left background=../common/images/bg/<?php randbg(); ?>>
==========================================

Here's why I think it's PHP4:  If I look at these pages on my local machine
(WinME, Apache 1.3.20, PHP4.06 module, MySQL 3.23.14 (not that it matters,
right?)), the randbg() function works as it should--I get a random
background image everytime.  But if I look at these EXACT SAME pages on
Fatcow (Linux/Apache, I believe, PHP4...), the randbg() function executes
the first time, then [seemingly] fails to execute again--it never generates
a different, random bakground.  (Or maybe I'm looking at one hell of a
coincidence :-)

So my question is, who is caching what, where?

...Rene


> -----Original Message-----
> From: Tamas Arpad [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, October 31, 2001 7:24 AM
> To: René Fournier; Hugh Danaher
> Cc: Php-General
> Subject: Re: [PHP] Re: Weird caching problem with PHP4/Apache
>
>
> On Wednesday 31 October 2001 14:48, René Fournier wrote:
> > Nope, unfortunately, nothing.  It's a really weird problem.  It's
> > like the PHP function I wrote for generating the random image will
> > only work the first time.
> I think it is not php that caches it. As I undertsand you wrote a
> script that generates an image, and give it back to the browser in an
> <img src=...> html tag. Am I right?
> I hope I am, so I continue :))
> Images can be cached in many places (proxies, browser), but
> definietly not in php. Your script that generates in the image and
> should be called every time by the <img> html tag, won't ever called
> again if the previous image were stored somewhere. You should send
> "pragma no-cache" and other http headers (many posts were on this
> "cache headers" topic) from the script that generates and gives back
> the image.
> Or another sollution is that you can call your script with a random
> number or better with the current date and time, so you images's name
> won't be the same, and caches can't give back the old image.
> for example:
> <?php echo"<img src=\"generatebackground.php?x=".date("YmdHis").
> "\">";?>
>
>       Arpi
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to