• ベストアンサー

画面の更新!?

データベース(DB)より読み込んだデータを更新する画面を作りました。更新画面のデータをホストにおくりDBを更新して、「更新処理が完了しました。」と表示する別画面をつくり、表示するところまではうまくいっているのですが(実際にDBデータも更新されている)、その画面から、タグの「<a」を使用して、更新画面に戻ってきても、そこに表示されるデータはDBが更新される前のデータなのです。(最初に表示したDBのデータ)どうすればよいのでしょうか。ちなみにIEの更新ボタンを押すと書き換えたデータが表示されます。 説明がヘタで申し訳ありませんが、よろしくお願いします。

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

  • ベストアンサー
  • hequil
  • ベストアンサー率65% (242/372)
回答No.2

多分ブラウザのキャッシュにDBを表示させるURLのデータが残っているんでしょうね。 DBを表示させるのASPファイルの先頭に <% Response.Expires = -1 Response.AddHeader "Pragma", "no-cache" Response.AddHeader "Cache-control", "no-store" %> と記述してみて下さい。 それでも駄目なら、更新画面から表示画面へのリンクのURLを <a href="表示画面.asp"> となっているところを <a href="表示画面.asp?20001118162905"> とURLが常に変わるように動的にURLを作るといいかと思います。 例として日付+時刻などの文字列などでも有効かと思います。 キャッシュも効かず、URL変更するのも避けたい場合は 表示画面となるASPを呼び出した場合、内部で1度リロードするような処理をさせる方法もあります。 #オススメしませんけど おそらく一番最初のキャッシュを無効にする処理を書けば 上手くいくかと思います。 試して駄目なら症状添えて教えていただければ対応しますよ。 それでは頑張って下さい。

zima_id
質問者

お礼

うまくいきました。 どうもありがとうございました。 なにかあったらまたよろしくお願いします。

その他の回答 (2)

  • basil
  • ベストアンサー率35% (148/420)
回答No.3

hequilさんのおっしゃるようにキャッシュが働いている可能性が大きいですね。 このキャッシュ機能をキャンセルする方法はいくつかありますが 簡単な方法としては、HTMLのHEADタグの間に、METAタグを打つ方法があります。 具体的には下記の通りです。 <HEAD> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> </HEAD> 簡単ですのでお試し下さい。

  • MAGI
  • ベストアンサー率45% (5/11)
回答No.1

更新ボタンを押すと書き換えたデータが表示される ということは、DBを読み込む処理が通るからです。 別画面で『更新しました』などの画面から戻る処理は ブラウザの『戻る』ボタンと同じ処理にしていませんか? <FORM ACITON="表示画面" METHOD="POST"> <INPUT TYPE="HIDDEN" NAME="dummy"> </FORM> でform から submit して見てください

関連するQ&A

  • Struts + Ajaxで画面更新

    お世話になります。 javascriptかJavaか迷ったのですが、こちらに投稿させていただきます。 もしカテゴリ違いなら申し訳ありません。 Strutsを使用しているのですが、Ajaxで画面遷移を行わずに画面の更新をしたいと思っています。 JSP内のincludeで読み込んでいるHTMLを更新したいです。 jqueryのpostメソッドでアクションを呼び出して更新データの取得などの処理までは行えたんですが、その後画面を更新する方法がよくわかりません。 例などを見ると、javascriptでタグなどをappendしたりして更新するのが多いのですがそれだと複雑なテーブルだったりアクションで取得して格納したbeanのデータを利用したいなどが難しそうなので、 バックグラウンドで行った後別のHTMLに表示してそれをincludeとかで更新できたらと思っているのですが無理なのでしょうか? もし無理ならそういう場合はどのように処理を行うのがよいのでしょうか。 意図がよくつかめない質問になり申しわけありませんが、回答よろしくお願いいたします。

    • ベストアンサー
    • Java
  • WordPressのアップデートに伴うDB更新

    質問させてください。 先日手動(サイトよりZIPファイルを落としてきて)にてWordPressのアップデートを行いました。 アップデート後に管理画面にログインすると 「データベースの更新が必要です。」 と表示されDB更新ボタンを押しデータベースの更新を行い問題なくサイトは表示されました。 ここで疑問に感じたのはDBの更新が必要になったのは、 WordPressのアップデートを行い新しくDBのテーブル等が必要になったから という認識で宜しいでしょうか? またこの画面は手動でアップデートを行った為に表示されたという認識で宜しいでしょうか? 管理画面からのアップデートを行った場合は自動でDBも更新されDB更新が必要という画面は現れないのでしょうか? どなたかご教示いただけましたら幸いでございますm(_ _)m

    • 締切済み
    • CSS
  • データベースの更新日について

    最近部署移動であるデータベースを管理しているのですが。データの更新日が何処にも表示されていないので表示するようシステム管理者に依頼したら更新日データを保持してないとの回答でした。 以前の部署でSQLを利用しておりましたが、そのようなことはちょっと考えられなかったのですが、データベースを管理する上で、そんなことがありえるのでしょうか?データベースはAS/400のDB2を使っているそうです。

  • 画面表示が間に合わない

    VC++ 6.0 で odbc を使ってオラクルのデータベースからデータを取得しています。プログラム実行と同時に、処理がDB接続→SQL文送信→データ抽出と、一気に 進んでしまい、本来、同時進行でウィンドウ内に表示すべきメッセージなどが表示されないまま、データを読み終わるまでウィンドウがフリーズ状態になります。 たぶんDBを扱う時に限った事ではないのでしょうが、こういった場合のうまく同期をとる方法を教えてください。。。(全ての画面表示がおわってから、次の処理へいく方法とか)どうかよろしくお願いします。

  • ラジオボタンについて。

    データの更新を行なう画面をつくり、データベースから取得したデータをもとにテキストの内容やラジオボタンのチェックの有無を画面に表示させようとしています。 最初に更新画面を呼び出し、データを表示することはうまくいくました。 しかし、IEの[表示]-[エンコード]や[最新の状態に更新]をやったり、戻るボタンで戻ると、テキストの内容は表示されるのですが、ラジオボタンは、なぜか一瞬チェックした後に、すぐチェックが外れてしまいます。 今やっているのは、Webの画面全てをASPで表示した後で、 最後にJavaScriptにより、 <script language='javaScript'> ラジオボタン名(i).checked = true; </script> のようにやっているのですが。。。 このやり方がまずいのでしょうか? 最初にボタン設定する際に"<INPUT TYPE ='radio' ~ checked>"で指定しなければいけないのでしょうか? よろしくお願いします。

  • 画面が固まってしまい困っています

     現在WIN98SEのパソコンを使っています。 インターネットの速度の事で質問させてください。  以前ヤフーのADSL8メガを使用していました。元々パソコンにはIE5が入っていたのですがマイクロソフトのサイトに行ったらIE6に更新できるとあったのでそのまま更新しましたが何の問題も無く快適に使えました。  その後パソコンの調子が悪くなり再インストールしてIE5に戻りその時も快適に使えていましたがIE5のままだと表示がうまく行かなくなる事があったのでまたマイクロソフトのサイトに行った時に更新するソフトがあるかどうかチェックする?ような項目があったのでそれで調べたら更新する項目が何個かあったようなので更新しました。 IE6に変わったのは分かったんですがそのほかは何が更新されたのか分かりません。  このIE6に更新した後から画面が固まったようになり表示が急に遅くなってしまいました。例えば以前の場合はヤフオクで見たい商品と間違った物をクリックした事に気付いて「戻る」を押すと画面が表示されている最中でもすぐに戻れましたが今はクリックした商品が9割ぐらい表示されるまで画面が固まってしまい「戻る」をクリックできない状態で速度の測定では今までと変わらないのに実際には遅くて非常にイライラさせられます。  msconfigでみてみると「全般」のタグで起動オプションを選択するとなっておりCONFIG.SYSを処理する SYSTEM.INIを処理する WIN.INIを処理する  スタートアップを見るとネットでの表示が遅いので全部のチェックを外したのですがmedi aaccessとizysvdとsrv32というのに必ずチェックが入ってしまいます。  パソコンの知識が無くて困ってるのでどこをチェックしたら良いかなど存知の方いらっしゃいましたらすぐに補足しますので回答よろしくお願いします。      

  • データベース接続について。

    Suclipt初心者です、わかりずらいかもしれませんが宜しくお願い致します。 今Sucliptにてデータベースより持ってきたデータを検索画面に表示し詳細ボタンを押したら詳細画面に移るというものを作っています。 JSP(検索画面)→Servlet(処理)→DAO(DB接続)→DB→DAO(DB接続)→JSP(検索画面)表示 ボタンを押すと→Servlet2(処理)→DAO→DB→JSP2(詳細画面、削除、更新)という流れです。 検索画面 例 社員番号  年齢  名前  備考  詳細 111     22  ああ  ああ  詳細←その列のボタンを押すと 222     33  いい  いい  詳細 333     44  うう  うう  詳細 詳細画面 社員番号  111   ←プライマリーキー 年齢    22 名前    ああ 備考    ああ 更新    削除  この様に表示される。 他のボタンも同様。 今の問題は 例えば検索画面にて for(int i= 0; i<projMemberList.length;i++){ ・・・ <td bgcolor="white"><%=projMemberList[i].getProjectCode() %><input type="hidden" name="prmProjectCode" value="<%=projMemberList[i].getProjectCode() %>">;<%=projMemberList[i].getProjNameDate() %></td> ・・・・ こんな感じで検索画面の社員番号をDBから表示してしているのですが、 ボタンを押したときに運ばれる情報は一番最初の111しか運ばれず、どのボタンを押しても111の詳細画面になってしまいます。 この場合222のボタンを押したときに222の情報を出すにはどうしたらいいでしょうか??? わかりずらくてすいません!! 宜しくお願い致します!!

  • 最初の画面を開いたときに・・・

    yahooやMSNなど最初の画面を開いたとき、 最新のニュースが表示されますよね? あれは、画面を開設するときにDBに接続して読み込んでいるのだと自分では思っています。 StrtusでWEBアプリを制作しているのですが、 yahooやMSNのように最初の画面を開いた時点で DBを読み込むにはどうしたらイイでしょうか? 画面を開いた時点で読み込む方法がわかりません。 なんらかのボタンを押した後などに読み込ませるという方法だったら わかるのですが・・・・・。 画面を開いた時点でいきなりActionを読み込ませる、ということになるのでしょうか? 初心者ですのでおかしなことを書いてるようでした申し訳ありません。

    • ベストアンサー
    • Java
  • ホームページNinja2003更新すると画面が崩れます

    お世話になります。簡単にできるホームページ作成ソフトということで、使っています。確かに簡単に作れます。 ホームページを更新すると時々、画像などがうまく表示されなくなる上、まったくいびつなページになってしまいます。 Ninja上のプレビューでは問題がありませんが、FTP転送するとIE上(ネットスケープ上)で崩れてしまいます。 IEで「更新」ボタンを押せばきれいな画面になります。何が問題なのかわかりません。Ninjaのマニュアルをみても対策を書かれていません。 どうすればよいのでしょうか?

  • 更新処理について

    sea_clear_skyです。 質問させて頂きます。 [環境] Win98SE PWS [質問内容] データベースのデータを<INPUT TYPE="TEXT">に表示させます。 INPUTTEXTは二つあり、データベースのIDとNAMEのデータを表示させます。 この際、データベースの更新処理は INPUTに入ったIDとNAMEを変更したいのですが、 データベースの更新処理のSQLでWhere=IDの値 で、データベースの値を指定しているため、 IDの値を変更させることができない状態です。 このやり方では、IDの値を更新させるのは不可能だと私自身では 思っています。 IDの値を変更させる方法は何かありますか? NAMEでSQLを引っ張ってきて、IDを更新させるしかないでしょうか? ご教授願います。 よろしくお願いします。