• ベストアンサー

phpでリフレッシュな実行を毎回するにはどうすればいいですか?

以下のようにぐるぐると2つのPHPモジュールを移動したときに、php_pgm2.phpに行くとたまに前回表示した内容が再表示される事があります。 php_pgm2.phpでPF5などで再表示すると新しくなるのですが、毎回フレッシュな状態で実行するにはどうすれば良いですか? ■php_pgm1.php  [表示]   ↓  [ボタン]   ↓  header("Location: php_pgm2.php")   ↓ ■php_pgm2.php  [表示]   ↓  href="php_pgm1.php"   ↓ ■php_pgm1.php  [表示]   ↓  [ボタン]   ↓  header("Location: php_pgm2.php")   ↓ ■php_pgm2.php  [表示]   ↓  href="php_pgm1.php" 例えば毎回セッションに時刻を書き込んだとしたら $_SESSION["aaaaa"] = time(); 最初のphp_pgm1.phpで$_SESSION["aaaaa"]が12時00分00秒 として php_pgm2.phpで$_SESSION["aaaaa"]が12時00分30秒 とすると 2回目のphp_pgm1.phpで表示されるのは12時00分30秒ではなく12時00分00秒となっています。

質問者が選んだベストアンサー

  • ベストアンサー
  • cybert
  • ベストアンサー率56% (18/32)
回答No.1

ブラウザのキャッシュが表示されていると思われます。 PHPのheader関数を利用して、HTTPレスポンスヘッダで ブラウザにキャッシュ機能を使わないように指示してあげて見てください。 参考サイト:技林 http://tech.bayashi.net/pdmemo/browsercache.html

その他の回答 (1)

回答No.2

spywareさん、こんにちは。 #1さんのようにキャッシュを無効にする方法と 違うページだとブラウザに認識させる方法があります。 キャッシュの無効方法については回答がありますので、省略します。 後者はURLの後ろにランダムな数字を付加したりなどして違うページだと思わせるやり方です。 例えば、以下のような方法です。 $rnd = time(); header("Location: php_pgm2.php?{$rnd}");

noname#17562
質問者

お礼

ありがとうございました。 お二人のやりがたを簡単にサンプル作成して試してみましたが、どちらも大丈夫でした。

関連するQ&A