CGI は環境変数というものを受け取って,ユーザの情報を知ります。
次の例を調べてみましょう。
#! /usr/bin/perl
print "Content-type: text/html\n\n";
print "<p>あなたは $ENV{'HTTP_REFERER'} から来ましたね\n";
print "<p>あなたのブラウザは $ENV{'HTTP_USER_AGENT'} ですね\n";
print "<p>あなたの読める言語は $ENV{'HTTP_ACCEPT_LANGUAGE'} ですね\n";
最後の例では ja が日本語,en が英語です。 これを使えばあいさつを変えることができます。
if ($ENV{'HTTP_ACCEPT_LANGUAGE'} =~ /^ja/) {
print "<p>こんにちは!\n";
} else {
print "<p>Hello!\n";
}
この 何々 =~ /^ja/ という書き方は,何々が ja で始まっているという意味です。 単に 何々 =~ /ja/ とすれば,何々に ja が含まれるという意味, 何々 =~ /ja$/ とすれば,何々が ja で終わっているという意味です。 何々 =~ /^ja$/ なら,何々が ja そのものということになります。
Last modified: 2004-12-24 12:52:30