0

私はいくつかの個人情報(写真を含む)を保存するためのPHPアプリケーションに取り組んでいます。画像を特定のフォルダ(たとえば、myapp / images / people /)に保存しています。

写真を保存した後、私のアプリは特定の人の情報(プロフィールの種類)を表示するページにリダイレクトされます。

写真が初めて保存された場合(その人のために以前に他の写真が保存されていない場合)、その写真はプロファイルに表示されます。この時点ですべてが機能しているようです。

問題は、写真を変更したいときです。写真を置き換えると、アプリケーションは古い写真を表示し続けます。サーバーを確認しましたが、古い写真はなくなりました。(必要に応じて)新しい写真しかありませんが、アプリケーションに表示されません。

キャッシュと関係があると思います。

キャッシュ値なしでhtmlタグを追加してみましたが、header()PHP関数を使用して同じ値を追加してみましたが、何もしていません。私も使ってみました:

if(file_exists($imagepath))
{
    unlink($imagepath);
}

私が使ったのと同じような

if(file_exists($imagepath))
{
    unlink($imagepath);
    clearstatcache();
}

しかし、何もありません。

誰かがこれを手伝ってくれますか?何が起こっているのかについて何か考えはありますか?新しい写真はサーバーにありますが、古い写真はありませんが、アプリは前のファイルを表示し続けます。

4

1 に答える 1

0

画像はブラウザにキャッシュされます。最善の方法は、サーバー上で新しい画像名を生成し、新しい画像をHTMLで返すことです。これはブラウザの新しい画像であるため、キャッシュから取得されず、アプリケーションに新しい画像が表示されます。

于 2013-01-08T21:58:28.900 に答える