個人事業主の方必見!確定申告のお悩み解決

いつもお世話になっております。
早速ですが、Webページを開いたときに、各言語ごとに
開くページの飛び先を変更したいのです。
ASPを使って
<%
Dim lang
lang=Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")
If inStr(lang,"ja")>0 then
Response.Redirect("http://aaa.co.jp/")
elseIf inStr(lang,"zh-tw")>0 then
Response.Redirect("http://bbb.co.jp/")
elseIf inStr(lang,"zh")>0 then
Response.Redirect("http://ccc.co.jp/")
else
Response.Redirect("http://top/co.jp/")
end if

%>
のようにして一応は出来たのですが、これをSelect文で実現できますでしょうか?
また、一般的にこのような手法は正しいですか?

宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

ご参考までに。



参考URL:http://www.f-store.net/asp/parts.asp?MODE=ITIRAN …
    • good
    • 0
この回答へのお礼

9arabiさんご回答ありがとうございました。
同様に下記のようにしたのですが、英語のページに飛んでしまいます。

IEの言語の設定でjaが優先にはなっていますが、他の言語も入っていると
英語のページに飛んでしまいます。
jaだけにすれば問題はありません。

<%
strFullLang = Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")
x=instr(strFullLang,"-")
If x <= 1 Then
strLang = strFullLang
Else
strLang = Left(strFullLang, x-1)
End If
strLang = LCase(Trim(strLang))

Select Case strLang
Case "ja"
Response.Redirect "http://aaa.html"
Case "zh-tw"
Response.Redirect "http://bbb.html"
Case "zh"
Response.Redirect "http://ccc.html"
Case Else
Response.Redirect "http://ddd.html"
End Select
%>

分かりますでしょうか?

お礼日時:2005/07/07 12:53

ちょっと私では分かりかねますが、


ブラウザの設定だけが中国語になっても、
他の環境が違うから、なのでしょうか。
コントロールパネルから、地域の設定をかえてみてはいかがでしょうか。
    • good
    • 0
この回答へのお礼

9arabiさんありがとうございます。

私のほうもいろいろ設定しなおしたのですが、駄目なようです。
IEの言語の設定を2つ登録してある人も少ないですよね。
このまま運用するか、IF文でのプログラムを使うか、または他の方法も
探してみます。

色々ありがとうございました。

お礼日時:2005/07/11 08:58

今実行して何が取得できるか確認できる環境にないので、アドバイスのみ。



該当のキーを検索すると(日本語に限定しないで)
結構色々出てきますので参考にされたらどうかと…
「Request.ServerVariables HTTP_ACCEPT_LANGUAGE ja en zh」

「他の言語も入っていると…」というのが理解できませんでした。
Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")で取得できるものが異なるということでしょうか?
http://www.microsoft.com/japan/msdn/library/ja/j …
HTTP_ACCEPT_LANGUAGEでとれる値も、環境によって絶対ではないので、完璧にするのは難しいと思います。

ご参考まで。

参考URL:http://64.233.167.104/search?q=cache:L7BuzkQvhsY …
    • good
    • 0
この回答へのお礼

9arabiさんありがとうございます。
>「他の言語も入っていると…」というのが理解できませんでした。

はIEの「ツール」→「オプション」→「全般」タブ内の「言語」のボタンを開くと
「言語の優先順位」というものがあり、テストで中国語(zh)を追加して日本語(ja)
より上(優先)に設定したということです。jaだけでは日本語が表示されますが、
中国語を登録するとselect elseのページが開いてしまいます。

if 文のときは、優先にした言語が開くように出来ていました。
inStr(lang,"ja")>0 thenの問題ですかね?

宜しくお願いします。

お礼日時:2005/07/07 18:11

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング