3

こんにちは私は動的に画像を作成しているphpファイルを持っています。基本的に、にテキストを追加しますimg。私は問題なくhtmlでこれらをこのように呼んでいます

<img src="img.php?session=<?php echo $session; ?>" />
<img src="img.php?session=<?php echo $session; ?>" />

サーバー上の画像が変更され、HTMLからこれを再度呼び出すと、画像は変更されません。新しい画像を表示するには、ページ全体を更新する必要があります。[編集]Chromeでも問題なく動作することにも気づきました。私はFirefoxでのみこの問題を抱えています。<meta http-equiv="Cache-Control" content="no-cache/>

4

4 に答える 4

2

これはPHPとは関係ありませんが、ブラウザと関係があります。ブラウザは画像をキャッシュしているため、完全に更新する必要があります。headHTMLタグの間にこれを追加することでこれを修正できるはずです

 <meta http-equiv="CACHE-CONTROL" content="NO-CACHE" />

編集同じことをすることができる 他のものがあるように見えhttp-equivます:

 <meta http-equiv="Pragma" content="no-cache" />
 <meta http-equiv="Expires" content="-1" />
于 2012-07-02T09:18:18.660 に答える
1

画像ソースの最後に乱数を追加すると、キャッシュに画像が見つからないため、常にサーバーから画像が取得されます。

于 2012-07-02T09:24:17.403 に答える
1

No Cacheを使用して画像にヘッダーを追加できheader()ます。

于 2012-07-02T09:18:30.120 に答える
1

私が採用した解決策は次のとおりです。

var ts = Math.round((new Date()).getTime() / 1000);
<img src="img.php?session=<?php echo $session; ?>&time=' + ts + '" />
于 2012-07-02T10:02:28.760 に答える