A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
そのようなことでしたらCGIの環境変数で $ENV{'HTTP_REFERER'} と書くとリンク元のURLがわかります。
サンキューページから自動的に戻るということは表示して指定秒数後に戻るということでしょうので、metaタグを使えばOKです。
ということは、CGIのサンキューページのHTMLを出力するところ、たとえば(文字コードがShift_JISという前提です)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>登録完了しました</title>
</head>
<body>登録ありがとうございました!</body>
</html>
とかあるでしょうけど、そこを
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Refresh" content="**;URL=$ENV{'HTTP_REFERER'}">
<title>登録完了しました</title>
</head>
<body>登録ありがとうございました!</body>
</html>
とすればいいです。**の部分には何秒後に移動するか書いて下さい(10秒だったら 10)
ただし、こうするといたずらとかで他サイトに登録フォームが設置されるとすると(ないだろうけど)そこに戻りますので相応しくないなら、登録処理のとこらへんに
unless ( $ENV{'HTTP_REFERER'} =~ /^*****/ )
{
print "Content-Type: text/html\n\n";
print <<"EOM";
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>メルマガ登録・エラー</title>
</head>
<body>
<p>リンク元が不正です</p>
</body>
</html>
EOM
exit(0);
}
とCGIの中にいれて下さい。*****には登録フォームがあるところやあなたのサイトのindex.html等を抜いたTOPページなどの最短アドレスなど許可するリンク元を記入して下さい。ただし、 http://abcdefg.com/abc/ でしたら http:\/\/abcdefg.com\/abc\/ などと/の前に\を入れてやらないと内部サーバーエラーをおこしますから注意して下さい。
こうすることでフォームに手を加えなくてもCGI側がやってくれるので便利かと思います。
No.3
- 回答日時:
CGIへ行く時に、そのページのURLを、
<imput type=hidden name=back_url value="../doc/hoge.html">
にしてCGIに渡し、ANo.2さんがおっしゃっているところに渡せば良いと思います。
No.2
- 回答日時:
あと。
このタグは<head>の中に書きます。こんな感じです。
<html>
<head>
<meta http-equiv="Refresh" content="10;URL=http://hoge.com/">
</head>
<body>
ご登録ありがとうございました!
10秒後に元の画面に戻ります。
</body>
</html>
この回答への補足
回答ありがとうございます。
元いたページはどのように指定すればいいのでしょうか?
指定したページへなら戻ることができるのですが、
元いたページは商品説明のページや、ご案内のページなど、
不特定のページでして、元のページへ戻る方法がわからないのです。
回答ありがとうございます。
元いたページはどのように指定すればいいのでしょうか?
指定したページへなら戻ることができるのですが、
元いたページは商品説明のページや、ご案内のページなど、
不特定のページでして、元のページへ戻る方法がわからないのです。
No.1
- 回答日時:
CGIで「元いたページ」情報を取得しておいて、
サンキューページを書き出した時に
「元いたページ」へ移動するタグを書くんですね。
<meta http-equiv="Refresh" content="10;URL=http://hoge.com/">
を使います。
10秒後に、http://hoge.comに移動します。
http://hoge.comの部分にもといたページのURLを書きましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
objectタグを使って背景を透明...
-
IE8 フォーカス&クリック時の...
-
CGI作動後に、元いたページ...
-
上下の文字の隙間を空けたい!
-
css ,videotタグ。ホームページ...
-
IE8導入後の不具合?
-
ジャンプページ?
-
borderでa:hover下線表示させる...
-
フレームをまたいだ非表示・表...
-
HPの文字化けを直したい
-
特定のページだけを検索エンジ...
-
Firefox, リンクをクリックで b...
-
FC2ホームページ 『meta name="...
-
iframe内の表示を常に最新にしたい
-
TEXTAREAのスクロールバーを消...
-
html で 変数を定義できますか?
-
WEBブラウザ「インターネッ...
-
iPhoneのSafariで自動的に縮小...
-
IEで背景画像が表示されない
-
meta要素の意味
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
body内にmetaタグを記述は問題...
-
POSTしたデータの文字コードがu...
-
css ,videotタグ。ホームページ...
-
HTMLファイルのインクルードで...
-
先日ウェブデザイン技能検定三...
-
iframe内の表示を常に最新にしたい
-
HTML上に貼り付けたPDFが表示さ...
-
html で 変数を定義できますか?
-
text-decorationを伸ばす方法
-
ページ全体を中央に配置したい...
-
根号の書き方について
-
自分で<head>内をかけない場合...
-
safariだけcssが反映されない
-
FFFTPでの文字化け
-
表示時に1回だけリロードさせ...
-
refreshタグ 自動的にジャンプ...
-
TEXTAREAのスクロールバーを消...
-
<body>のすぐ下=metaタグ?
-
objectタグを使って背景を透明...
-
WebのPythonでの値の受け渡し
おすすめ情報