OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

ブラウザのページ履歴を残さずに遷移させる方法

  • 困ってます
  • 質問No.146195
  • 閲覧数332
  • ありがとう数2
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 63% (7/11)

こんにちわ。

現在、perlにてあるプログラムを作っています。
その中で、数あるCGIファイルをたどっていく際に
どうしても、ブラウザに履歴を残さずに
進ませたいのですが、その方法がわかりません。
言い換えれば、一度進んだら戻れなくしたいわけです。

フレーム化してその中のサブフレームで
遷移させたのですが、
物理的にファイル名が変わった場合、ブラウザの
履歴に残ってしまい、戻ることが可能です。

常に新しいページを開かせてもページが
開く座標を全て同一に指定できないと運用上、
よろしくないと考えます。

どうすればこの問題が解消できるか、
ご存知の方が居られましたら回答いただきたいと
思います。
よろしくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル12

ベストアンサー率 25% (243/949)

すみません。perlの方は、まったく no ideaなのですが、

>常に新しいページを開かせてもページが
>開く座標を全て同一に指定できないと

ということでしたら、
新しく開かれるhtmlに、

<html>
<head>
<title>******</title>
<script language="javascript">
self.moveTo(A,B);
self.focus();
</script>


と記載し、AとBに好きな座標を入れれば、
開くウインドウの位置を指定してあげることはできます。
お礼コメント
aquastep

お礼率 63% (7/11)

Naodon1020さん、こんにちわ。

ご回答ありがとうございました。

この方法でなら、履歴を残さず、
かつ、ユーザに感じさせるストレスが
軽減されそうです。

早速この方法を使わせていただこうと
思います。
貴重なご意見、ありがとうございました。
投稿日時 - 2001-10-05 23:46:45
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル11

ベストアンサー率 58% (114/195)

履歴を消す事自体は不可能です。そのうちブラウザの機能として入るかもしれませんが、現状では出来ませんでしたし(少なくともIEに関してはMSDN NewsのAsk Dr.GUIでその問題が出ていたはず)、できるようになったとしてもすべてのブラウザで可能なわけではないので無意味でしょう(RFCで制定されれば別なんですが) 目的から状況がsubmitページのリロード防止のように思われますので、そのように仮定 ...続きを読む
履歴を消す事自体は不可能です。そのうちブラウザの機能として入るかもしれませんが、現状では出来ませんでしたし(少なくともIEに関してはMSDN NewsのAsk Dr.GUIでその問題が出ていたはず)、できるようになったとしてもすべてのブラウザで可能なわけではないので無意味でしょう(RFCで制定されれば別なんですが)

目的から状況がsubmitページのリロード防止のように思われますので、そのように仮定して話を進めます。
上記の仮定通りであるのであれば以下の方法が使えるかもしれません。
・・・外れてた場合は無視してくださいね(^^;

データを送信するページから、submitページへデータをGET/POSTでなげてやり、受けたページではデータを処理(データベースにストアしたり、メール送ったり色々。要するに本来やりたい事)し、「httpヘッダ上でLocationを使って」別のページに飛ばします。

そうするとwebブラウザ(IE、NN4、Mozzila)ではHttpヘッダのLocationを使ってページジャンプをしているため、ブラウザの履歴にsubmitページ自体は残らない・・・というかLocation先のページとしてデータが残ります。
このため、submit後にリロードされても、Location先のページにしかリクエストは要求されません。
ただし、この方法の場合、URLを指定してsubmitページを指定された場合、問題が出ますので、submitページへのデータ要求はPOSTのみ、パラメータが不正な場合はそれ用の処理をするようにしておくべきでしょう。

一応有名な・・・というか多分GUI系ブラウザはこれで誤魔化せるでしょうが、駄目なブラウザが存在するかも知れません。(テキストブラウザは結構ヤバそうな気がします)

ブラウザ上でやる場合、こう言う問題は出てくるものです。下手に悩むぐらいならJava Appletを使ってClient-Serverにしてしまい、データはすべてApplet内で入れる、とするのが最も良い解決法だとおもいます。
もしくは.NETで作っちゃうとか(笑)
お礼コメント
aquastep

お礼率 63% (7/11)

alfeimさん、こんにちわ。

回答ありがとうございました。

なるほど。やはり履歴そのものを消すことは
不可能ですか。
Locationで飛ばす、なるほど参考になりました。
早速試してみたいと思います。
貴重なご意見、ありがとうございました。
投稿日時 - 2001-10-05 23:43:29

このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ