5
  1. ブラウザ言語に基づいてユーザーをリダイレクトしたいのですが、ここでこれを行う方法を見つけました。問題なく動作します。コード(PHP)は次のとおりです。

    if(preg_match('/en-US/', $_SERVER['HTTP_USER_AGENT']))
        header("location:index.php");
    else
        header("location:http://cn.gearor.com");
    
  2. 問題は、他の Web サイトから、または自分の Web サイトへの最初の訪問時にのみユーザーをリダイレクトしたいことです。つまり、ユーザーが自分のウェブサイトの一部のページを読んでほしくないということです。ユーザーがインデックスに戻ると、他のページにリダイレクトされます。また、私のウェブサイトには、英語または中国語のようなリンクがあります。ユーザーが中国語のページから英語をクリックすると、index.php に移動し、中国語のページにリダイレクトされて、ユーザーは英語のページにアクセスできなくなります。 . これを PHP または JavaScript で修正するにはどうすればよいですか?

4

2 に答える 2

6

$_SESSION['lang'] のようなセッション変数を設定し、$_SESSION['lang'] が設定されていない場合にのみ上記のコードを適用できます。つまり、次のとおりです。

if(!isset($_SESSION['lang'])){
  if(preg_match('/en-US/', $_SERVER['HTTP_USER_AGENT'])){
    $_SESSION['lang'] = 'en';
    header("location:index.php");
  }else{
    $_SESSION['lang'] = 'other';
    header("location:http://cn.gearor.com");
  }
}
于 2010-02-28T19:09:21.850 に答える
-1

あなたが言っていることを理解するのは難しかったです.少し再確認することができれ.

于 2010-02-28T19:17:02.990 に答える