Как перенаправить пользователей на основе языка браузера - PullRequest
5 голосов
/ 28 февраля 2010
  1. Я хочу перенаправить пользователей на основе языка браузера, я понял, как это сделать здесь, он работает нормально, вот код (PHP):

    if(preg_match('/en-US/', $_SERVER['HTTP_USER_AGENT']))
        header("location:index.php");
    else
        header("location:http://cn.gearor.com");
    
  2. Проблема в том, что я хочу перенаправлять пользователей только с других сайтов или при первом посещении моего сайта. Это означает, что я не хочу, чтобы пользователи читали некоторые страницы моего сайта, когда они возвращаются в индекс, они перенаправляются на другую страницу. И у меня также есть ссылка на моем веб-сайте, например: английский или китайский, когда пользователи нажимают на английский на китайской странице, они переходят на index.php и перенаправляются обратно на китайскую страницу, из-за чего пользователи не могут посетить английскую страницу. , Как это исправить в PHP или JavaScript?

Ответы [ 2 ]

6 голосов
/ 28 февраля 2010

Вы можете установить переменную сеанса, такую ​​как $ _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");
  }
}
0 голосов
/ 28 февраля 2010

Ну, было трудно понять, о чем вы говорите, если вы можете немного переяснить, но вот то, что, как вы думаете, вы просили, Pastebin .

...