CGIで会員のID毎に表示するページの振り分けをしようと思います。

会員のIDをテキストファイル等別のファイルに格納し、CGIで呼び出して振り分けをしたいと考えています。
例1: $file1 = ’./member1.txt’;
例2: $file2 = ’./member2.txt’;
これをCGIで
$url{$member1} = ’http://xxx.com/mem1/;
$url{$member2} = ’http://xxx.com/mem2/;
のように例1のファイル内にあるIDのメンバー(member1)には上記URLを、同様に2には別のURLを・・・と振り分けをしたいのですが、$fileから呼び出してURLに関連付けるまでの方法が分かるようなページがあれば教えてください。
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:MERCY No.1

回答回数68ベストアンサー獲得回数0

ポイント70pt

そのくらいなら、今、ここに

open(DB,”./$file1”);

@tmp = <DB>;

close(DB);

foreach(@tmp);

chomp();

if(/INPUTUSERNAME/){

print ”Location:$url{$member1}”;

}

}

undef(@tmp);

open(DB,”./$file2”);

@tmp = <DB>;

close(DB);

foreach(@tmp);

chomp();

if(/INPUTUSERNAME/){

print ”Location:$url{$member2}”;

}

}

です

INPUTUSERNAMEとか

foreachループの中は適当に変えてくださいね

id:english No.2

回答回数304ベストアンサー獲得回数0

ポイント70pt

http://www.hatena.ne.jp/1098460934

CGIで会員のID毎に表示するページの振り分けをしようと思います。 会員のIDをテキストファイル等別のファイルに格納し、CGIで呼び出して振り分けをしたいと考えています。 .. - 人力検索はてな

ご質問をそのまま忠実に実現するには、「1」のMERCYさんの回答のようになると思いますが、これだとmemberファイルが多くなっくると、ファイルのopen+closeが多くなって、非効率的ではないでしょうか?

会員数にもよると思いますが、memberファイルはひとつにして、member.txt内にIDとURLの対応関係をカンマ区切りでやるというやり方ではだめなのでしょうか?

例:

member.txtの中身

hogehoge1,mem1

hogehoge2,mem1

hogehoge3,mem2

hogehoge4,mem1

・・・・

のような感じで。それとも、member1.txtやmember2.txtには、もっと複雑な情報がたくさん入っているのでしょうか?

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません