アクセス元がアドレス1だった場合は<FORM name="form" action="1.cgi" method="POST">を表示
アクセス元がアドレス2だった場合は<FORM name="form" action="2.cgi" method="POST">を表示
アクセス元がアドレス3だった場合は<FORM name="form" action="3.cgi" method="POST">を表示
アクセス元がアドレス4だった場合は<FORM name="form" action="4.cgi" method="POST">を表示
アクセス元がアドレス5だった場合は<FORM name="form" action="5.cgi" method="POST">を表示
というように、50以上のアクセス元によって別々のCGIに送信するよう全振り分けたいのですが、方法がわかりません。
どなたかご教授宜しくお願いいたします。
No.3
- 回答日時:
こんな感じで。
リファラーと送信先CGIの名前の関連性みたいのがはっきりしていれば、
50以上のリストをバカ正直に書かなくてもいいかもしれないけど。
# リファラーと送信先のリスト定義
%ref_addr=(
アドレス1 => 1.cgi,
アドレス2 => 2.cgi,
~~
アドレス50 => 50.cgi,
);
# 環境変数HTTP_REFERERに合わせた送信先の設定
$cgiaddr = $ref_addr{$ENV{HTTP_REFERER}};
# 値が空だったら未定義のリファラー、送信先をaddrXに設定
$cgiaddr = addrX unless($cgiaddr);
print qq|<FORM name="form" action="$cgiaddr" method="POST">|;
ご回答ありがとうございます。
何度か試してみましたが、エラーになってしまいます。cgiスクリプトとの相性がわるいのでしょうか?No.2で教えていただいた内容では動作しました。お手数ですが、宜しくお願いいたします。
No.2
- 回答日時:
>リファラーは正常に取得できております。
でしたら、
@adr = ('アドレス1','アドレス2',・・・
for($i = 0; $i <= $#adr; $i++){
if($ENV{'HTTP_REFERER'} eq $adr[$i]){
print('<FORM name="form" action="'.($i+1).'.cgi" method="POST">');
last;
}
}
こんな感じでどうでしょう?
ご回答ありがとうございます。
実際に使う送信先のcgi名が数字でないのですが、その場合はどのようにすればよろしいのでしょうか。
また、リファラーが取得できなかった場合の送信さきも指定できますでしょうか。わからないことばかりで申し訳ございません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
さくらインターネットのCGI...
-
wordの数式について 定積分を書...
-
select値をhiddenのvalueに渡し...
-
フリーズする原因
-
ラジオボタンが両方とも選択で...
-
MSPゴシックで、一番幅を取る文字
-
CGI経由でのPDFファイルをダウ...
-
Yomi-Searchのカテゴリを縦並び...
-
cgiからsendmailを送信で文字化け
-
ラジオボタンを選択済みにする...
-
”送信ボタン” ”クリアボタン”...
-
アンケートフォームで前のペー...
-
ディレクトリのファイル数取得
-
WEBページを強制的に横画面で見...
-
チェックボックスで選択した内...
-
チェックボックスの返す値
-
<FORM TYPE="subumit">でデータ...
-
SELECTでgroup byした時の挙動
-
フォームメール確認用ページ
-
別formのhidden項目を自form値...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
(Perl)ReadParseによるハッシ...
-
Javascriptの変数をCGIに送る方法
-
フォーム入力後の確認画面表示...
-
htmlからcgiに変数を配列にして...
-
perlで自動ログインをしたいが...
-
別サーバーのcgiへバイナリデー...
-
VBで表示したホームページの...
-
リストボックスで選択してさら...
-
入力規則をまとめて定義
-
HDMLでCGIを使おうと思うのです...
-
Rubyのmechanizeを利用したファ...
-
cgi-libを使って変数値渡しをし...
-
htmlのフォームからcgiにデータ...
-
アクセス元URLによって振り分け...
-
フォームに入力した情報をその...
-
SUN BBSの改造方法
-
ラジオボタンが両方とも選択で...
-
「value」に2つの値をセットす...
-
WEBページを強制的に横画面で見...
-
select値をhiddenのvalueに渡し...
おすすめ情報